#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 %integer i
int I;
// 3 i = 42
I = 42;
// 4 %for i = 0, 2, 17 %cycle
// %for I = 0, 2, 17 %cycle
{
if (invalid_for_loop(0, 2, 17)) _imp_signal(5, 1, 0, "Illegal cycle I = 0, 2, 17");
I = -2;
L_0001:
if (I == 17) goto L_0002;
I += 2;
// 5 %continue %if i <= 4
if (I > 4) goto L_0004;
goto L_0003;
L_0004:;
// 6 %exit %if i = 5
if (I != 5) goto L_0005;
goto L_0002;
L_0005:;
// 7 %repeat
L_0003:;
goto L_0001;
}
L_0002:;
// 8 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}