Test: mg_9_5

Higher SubleqErrorOutputSubleqITR
void main()
{
   goto a2;
a1:
   __out 50;
   return;
a2:
   __out 49;
   goto a1;
}


12

   top:top top sqmain

_main:
   dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
   ?+6; sp ?+2; bp 0
   bp; sp bp

   Z Z l_main_a2

l_main_a1:
   c1 (-1)

   Z Z end_main

l_main_a2:
   c2 (-1)

   Z Z l_main_a1

end_main:
   sp; bp sp
   ?+8; sp ?+4; bp; 0 bp; inc sp
   ?+8; sp ?+4; ?+7; 0 ?+3; Z Z 0

sqmain:
   dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
   ?+6; sp ?+2; ?+2 0 _main; . ?; inc sp

   Z Z (-1)

. c2:49 c1:50

. inc:-1 Z:0 dec:1 ax:0 bp:0 sp:-sp

Root (mg_9_5.hsq:11)
   Function:0 [main] (mg_9_5.hsq:1)
      Keyword [void] (mg_9_5.hsq:1)
      Param-type-list (mg_9_5.hsq:1)
      Block (mg_9_5.hsq:2)
         Keyword-statement [goto] (mg_9_5.hsq:3)
            Label [a2] (mg_9_5.hsq:3) a2:7
         Label-statement [a1] (mg_9_5.hsq:4)
            OperatorIO [__out] (mg_9_5.hsq:5)
               Const [50] (mg_9_5.hsq:5)
         Keyword-statement [return] (mg_9_5.hsq:6)
         Label-statement [a2] (mg_9_5.hsq:7)
            OperatorIO [__out] (mg_9_5.hsq:8)
               Const [49] (mg_9_5.hsq:8)
         Keyword-statement [goto] (mg_9_5.hsq:9)
            Label [a1] (mg_9_5.hsq:9) a1:4