Hello,
it seems that there is no initial value of i for loop in assign_ent function,
so that it cannot loop when compiled with gcc in debian 12.
void assign_ent(char side, node* branch, char swap[2][8][8])
{
int i,j=0;
This could solve by modifying as
int i=0,j=0;
Thank you!