#include <perms.h>

                                                                //      1  ! trivial example to show the problem
                                                                //      2  
                                                                //      3  %externalroutine my write(%integer n, p)
#line 3 "regression-bugs-tmp/overload.imp"
void MYWRITE( int N, int P )
#line 3 "regression-bugs-tmp/overload.imp"
{
  __label__ _imp_endofblock;
                                                                //      4    ! first capture the perms version
                                                                //      5    write(n, p)
_imp_current_line = 5; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 5 "regression-bugs-tmp/overload.imp"
_imp_WRITE(N, P);
                                                                //      6  %end
_imp_current_line = 6; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 6 "regression-bugs-tmp/overload.imp"
return;
_imp_endofblock: ;
} // End of block MYWRITE at level 1
                                                                //      7  
                                                                //      8  %externalroutine write(%integer n, p)
#line 8 "regression-bugs-tmp/overload.imp"
void WRITE( int N, int P )
#line 8 "regression-bugs-tmp/overload.imp"
{
  __label__ _imp_endofblock;
                                                                //      9    print string("Result is ")
_imp_current_line = 9; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 9 "regression-bugs-tmp/overload.imp"
_imp_PRINTSTRING(_imp_str_literal("Result is "));
                                                                //     10    my write(n, p)
_imp_current_line = 10; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 10 "regression-bugs-tmp/overload.imp"
MYWRITE(N, P);
                                                                //     11    newline
_imp_current_line = 11; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 11 "regression-bugs-tmp/overload.imp"
_imp_NEWLINE();
                                                                //     12  %end
_imp_current_line = 12; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 12 "regression-bugs-tmp/overload.imp"
return;
_imp_endofblock: ;
} // End of block WRITE at level 1
                                                                //     13  
                                                                //     14  %begin
#line 14 "regression-bugs-tmp/overload.imp"
int main(int argc, char **argv) {
  __label__ _imp_endofblock;
  _imp_initialise(argc, argv);
                                                                //     15    write(123, 0)
_imp_current_line = 15; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 15 "regression-bugs-tmp/overload.imp"
WRITE(123, 0);
                                                                //     16  %endofprogram
_imp_current_line = 16; _imp_current_file = "regression-bugs-tmp/overload.imp";
#line 16 "regression-bugs-tmp/overload.imp"
return 0;
_imp_endofblock: ;
} // End of block _imp_main at level 1
#line 16 "regression-bugs-tmp/overload.imp"
// End of file
