#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 %integernamearray inra(0:9)
int *INRA[10];
// 6
// 7 %routine test12(%integernamearrayname xinan1)
void TEST12(int **XINAN1) {
// 8 xinan1(4) == xp
[/*BUG*/ 0] = (int *)XP;
// 9 xp == xinan1(4)
XP = (int *)[/*BUG*/ 0];
// 10 xinan1(4) == x
[/*BUG*/ 0] = (int *)/*?*/ &X;
// 11 xinan1(4) = x
*[/*BUG*/ 0] = X;
// 12 x = xinan1(4)
X = *[/*BUG*/ 0];
// 13 %end
return;
} /* end of TEST12 */
// 14
// 15 inra(4) == x
INRA[4] = (int *)/*?*/ &X;
// 16 test12(inra)
TEST12(INRA);
// 17
// 18 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}