#include <perms.h>

                                                                //      1  %begin
#line 1 "regression-bugs-tmp/dscond.imp"
int main(int argc, char **argv) {
  __label__ _imp_endofblock;
  _imp_initialise(argc, argv);
                                                                //      2  
                                                                //      3    %integerfn getchar
_imp_current_line = 3; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 3 "regression-bugs-tmp/dscond.imp"
int GETCHAR( void )
#line 3 "regression-bugs-tmp/dscond.imp"
{
  __label__ _imp_endofblock;
                                                                //      4      %integer sym
_imp_current_line = 4; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 4 "regression-bugs-tmp/dscond.imp"
int SYM;
                                                                //      5      readsymbol(sym)
_imp_current_line = 5; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 5 "regression-bugs-tmp/dscond.imp"
_imp_READSYMBOL(&SYM);
                                                                //      6      printstring("Call returned "); printsymbol(sym); newline
_imp_current_line = 6; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 6 "regression-bugs-tmp/dscond.imp"
_imp_PRINTSTRING(_imp_str_literal("Call returned "));
_imp_current_line = 6; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 6 "regression-bugs-tmp/dscond.imp"
_imp_PRINTSYMBOL(SYM);
_imp_current_line = 6; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 6 "regression-bugs-tmp/dscond.imp"
_imp_NEWLINE();
                                                                //      7      %result = sym
_imp_current_line = 7; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 7 "regression-bugs-tmp/dscond.imp"
return SYM;
                                                                //      8    %end
_imp_current_line = 8; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 8 "regression-bugs-tmp/dscond.imp"
_imp_endofblock: ;
} // End of block GETCHAR at level 2
                                                                //      9    
                                                                //     10    printstring("Please enter the word BUG when I ask for data:"); newline
_imp_current_line = 10; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 10 "regression-bugs-tmp/dscond.imp"
_imp_PRINTSTRING(_imp_str_literal("Please enter the word BUG when I ask for data:"));
_imp_current_line = 10; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 10 "regression-bugs-tmp/dscond.imp"
_imp_NEWLINE();
                                                                //     11  
                                                                //     12    %if 'A' <= getchar <= 'C' %start
_imp_current_line = 12; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 12 "regression-bugs-tmp/dscond.imp"
if (({int tmp1 = 65, tmp2 = GETCHAR(), tmp3 = 67; (tmp1 > tmp2) || (tmp2 > tmp3);})) goto L_0002;
                                                                //     13      printstring("Test successful."); newline
_imp_current_line = 13; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 13 "regression-bugs-tmp/dscond.imp"
_imp_PRINTSTRING(_imp_str_literal("Test successful."));
_imp_current_line = 13; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 13 "regression-bugs-tmp/dscond.imp"
_imp_NEWLINE();
                                                                //     14    %else
_imp_current_line = 14; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 14 "regression-bugs-tmp/dscond.imp"
goto L_0003;
#line 14 "regression-bugs-tmp/dscond.imp"
L_0002:;
                                                                //     15      printstring("Test failed - getchar was called twice."); newline
_imp_current_line = 15; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 15 "regression-bugs-tmp/dscond.imp"
_imp_PRINTSTRING(_imp_str_literal("Test failed - getchar was called twice."));
_imp_current_line = 15; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 15 "regression-bugs-tmp/dscond.imp"
_imp_NEWLINE();
                                                                //     16    %finish
_imp_current_line = 16; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 16 "regression-bugs-tmp/dscond.imp"
L_0003:;
                                                                //     17  
                                                                //     18  %endofprogram
_imp_current_line = 18; _imp_current_file = "regression-bugs-tmp/dscond.imp";
#line 18 "regression-bugs-tmp/dscond.imp"
return 0;
_imp_endofblock: ;
} // End of block _imp_main at level 1
#line 18 "regression-bugs-tmp/dscond.imp"
// End of file
