#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2
// 3 %integer X
int X;
// 4 %integername XP
int *XP;
// 5
// 6 %predicate test(%integer a,b, %integername c)
int TEST(int A, int B, int *C) {
// 7 %true
return 1 /*TRUE*/;
// 8 %end
} /* end of TEST */
// ?C unused
// ?B unused
// ?A unused
// 9
// 10 %if test(X,XP,X) %start
if (!(TEST(X, *XP, /*?*/ &X))) goto L_0001;
// 11
// 12 %finish
L_0001:;
// 13
// 14 %if test(X,XP,XP) %start
if (!(TEST(X, *XP, XP))) goto L_0002;
// 15
// 16 %finish
L_0002:;
// 17
// 18 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}