#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2
// 3 %recordformat fm(%integer dummy)
struct FM {
union {
struct {
int DUMMY;
};
};
};
// 4
// 5 %record(fm)%map rmap
struct FM *RMAP(void)
{
// 6 %ownrecord(fm) rec
static struct FM REC;
// 7 rec_dummy = 1
REC.DUMMY = 1;
// 8 %result == rec
return /*?*/ &REC;
// 9 %end
} /* end of RMAP */
// 10
// 11 %integer i
int I;
// 12
// 13 %record(fm)%name recn
struct FM *RECN;
// 14
// 15 recn == rmap
RECN = (struct FM *)RMAP();
// 16
// 17 i = recn_dummy
I = RECN->DUMMY;
// 18
// 19 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}