#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 printstring("Hello!"); newline
_imp_PRINTSTRING(_imp_str_literal("Hello!"));
_imp_NEWLINE();
// 3 %begin
{ /*%begin*/
// 4 printstring("In a %begin block..."); newline
_imp_PRINTSTRING(_imp_str_literal("In a %begin block..."));
_imp_NEWLINE();
// 5 %return ;! in i2c this erroneously returns from main program :-(
goto end_1000;
// 6 printstring("I guess %return in a %begin/%end block really does mean that it is an anonymous routine...");
_imp_PRINTSTRING(
_imp_str_literal("I guess %return in a %begin/%end block really does mean that it is an anonymous routine..."));
_imp_NEWLINE();
// ?access
// 7 ; newline
end_1000:;
}
// 7 %end
// 8 printstring("Goodbye!"); newline
_imp_PRINTSTRING(_imp_str_literal("Goodbye!"));
_imp_NEWLINE();
// 9 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}