#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 %integer no options = 1
int NOOPTIONS;
NOOPTIONS = 1;
// 3
// 4 %routine get option(%integer %name opt)
void GETOPTION(int *OPT) {
// 5 %for opt = 1, 1, no options %cycle
// %for *OPT = 1, 1, NOOPTIONS %cycle
{
int _final = NOOPTIONS;
if (invalid_for_loop(1, 1, _final)) _imp_signal(5, 1, 0, "Illegal cycle *OPT = 1, 1, NOOPTIONS");
*OPT = 0;
L_0001:
if (*OPT == _final) goto L_0002;
*OPT += 1;
// 6 %repeat
goto L_0001;
}
L_0002:;
// 7 %end
return;
} /* end of GETOPTION */
// 8
// 9 %integer x
int X;
// 10
// 11 get option(x)
GETOPTION(/*?*/ &X);
// 12
// 13 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}