Test: ml_3

Higher SubleqErrorOutputSubleqITR
int getchar();
void main()
{
   if(0) __out getchar();
}



   top:top top sqmain

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

   t1; c1 Z; Z t1 ?+3; Z Z ?+9; Z; c1 t1; c1 t1
   Z t1 l1
   dec sp; ?+11; sp ?+7; ?+6; sp ?+2; 0
   ?+6; sp ?+2; ?+2 0 _getchar; . ?;
   t1; ax t1
   inc sp
   t1 (-1)
l1:

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

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

   t1; (-1) t1
   ax; t1 ax
   Z Z end_getchar

end_getchar:
   ?+8; sp ?+4; t1; 0 t1; inc sp
   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)

. c1:0

. t1:0

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

Root (ml_3.hsq:6)
   Function:0 [getchar] (ml_3.hsq:1)
      Keyword [int] (ml_3.hsq:1)
      Param-type-list (ml_3.hsq:1)
   Function:0 [main] (ml_3.hsq:2)
      Keyword [void] (ml_3.hsq:2)
      Param-type-list (ml_3.hsq:2)
      Block (ml_3.hsq:3)
         Keyword-statement [if] (ml_3.hsq:4)
            Equality [!=] (ml_3.hsq:4)
               Const [0] (ml_3.hsq:4)
               Const [0] (ml_3.hsq:4)
            OperatorIO [__out] (ml_3.hsq:4)
               Postfix [(] (ml_3.hsq:4)
                  Label [getchar] (ml_3.hsq:4)
   Function:0 [getchar] (::getchar:1)
      Keyword [int] (::getchar:1)
      Param-type-list (::getchar:1)
      Block (::getchar:2)
         Keyword-statement [return] (::getchar:3)
            OperatorIO [__in] (::getchar:3)