#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 %integer x = 0
int X;
X = 0;
// 3
// 4 %routine step1
void STEP1(void) {
// 5 x = 1
X = 1;
// 6 %end
return;
} /* end of STEP1 */
// 7
// 8 %routine step2
void STEP2(void) {
// 9 x = 2
X = 2;
// 10 %end
return;
} /* end of STEP2 */
// 11
// 12 %routine step3
void STEP3(void) {
// 13 x = 3
X = 3;
// 14 %end
return;
} /* end of STEP3 */
// 15
// 16 step1
STEP1();
// 17 step2
STEP2();
// 18 step3
STEP3();
// 19 write(x, 0); newline
_imp_WRITE(X, 0);
_imp_NEWLINE();
// 20 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}