#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 %string(255)s
_imp_string255 S;
// 3 s = "left" . "right"
_imp_strncpy(/*?*/ &S, ({
__typeof__(_imp_string255) tmp; /*B*/
tmp = _imp_str_literal("left");
(void *)&tmp;
}),
/*max:*/ 255);
// 4 printstring(s); newline
_imp_PRINTSTRING(
*({
__typeof__(_imp_string255) tmp = S /*q*/;
(_imp_string255 *)&tmp;
})
);
_imp_NEWLINE();
// 5 s = "left" . "middle" . "right"
_imp_strncpy(/*?*/ &S, ({
__typeof__(_imp_string255) tmp; /*B*/
tmp = _imp_str_literal("left");
(void *)&tmp;
}),
/*max:*/ 255);
// 6 printstring(s); newline
_imp_PRINTSTRING(
*({
__typeof__(_imp_string255) tmp = S /*q*/;
(_imp_string255 *)&tmp;
})
);
_imp_NEWLINE();
// 7 s <- "left" . "right"
_imp_strncpy(/*?*/ &S, ({
__typeof__(_imp_string255) tmp; /*C*/
tmp = _imp_str_literal("left");
(void *)&tmp;
}),
/*max:*/ 255);
// 8 printstring(s); newline
_imp_PRINTSTRING(
*({
__typeof__(_imp_string255) tmp = S /*q*/;
(_imp_string255 *)&tmp;
})
);
_imp_NEWLINE();
// 9 s <- "left" . "middle" . "right"
_imp_strncpy(/*?*/ &S, ({
__typeof__(_imp_string255) tmp; /*C*/
tmp = _imp_str_literal("left");
(void *)&tmp;
}),
/*max:*/ 255);
// 10 printstring(s); newline
_imp_PRINTSTRING(
*({
__typeof__(_imp_string255) tmp = S /*q*/;
(_imp_string255 *)&tmp;
})
);
_imp_NEWLINE();
// 11 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}