#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 %constant %integer five = 2_101
// 3 %routine nested
void NESTED(void) {
// 4 printstring("five = ".itos(five,0))
_imp_PRINTSTRING(
/* clang-format off */
*({ __typeof__(_imp_string255) tmp = *({_imp_string255 tmp = _imp_join((_imp_string *)/*?*/_imp_str_literal_ptr("five = "), ({__typeof__(_imp_string255) tmp; /*E*/ tmp = _imp_ITOS(5, 0); (void *)&tmp;})); (_imp_string255 *)&tmp;})/*q*/; (_imp_string255 *)&tmp; })
/* clang-format on */
);
// 5 %end
return;
} /* end of NESTED */
// 6
// 7 nested
NESTED();
// 8
// 9 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}