#include <perms.h>

//          Edinburgh IMP77 Compiler - Version 8.4
//
//     1  %BEGIN

int main(int argc, char **argv) { /*%begin*/
  _imp_initialise(argc, argv);

  //     2  %STRING(30) S,T

  _imp_string30 S;
  _imp_string30 T;

  //     3        S="JUST SOME TEXT"

  _imp_strncpy(/*?*/ &S, ({
                 __typeof__(_imp_string255) tmp; /*B*/
                 tmp = _imp_str_literal("JUST SOME TEXT");
                 (void *)&tmp;
               }),
               /*max:*/ 30);

  //     4        %IF S->("JUST") %THEN PRINTSTRING("TEST OK")

  if (!(_imp_resolve(*({
        _imp_string30 tmp = S;
        (_imp_string255 *)&tmp;
      }),
                     0 /*NULL*/, *({
                       _imp_string tmp = _imp_str_literal("JUST");
                       (_imp_string255 *)&tmp;
                     }),
                     0 /*NULL*/)))
    goto L_0001;
  _imp_PRINTSTRING(_imp_str_literal("TEST OK"));
L_0001:;

//     5  %ENDOFPROGRAM

  _imp_stop(0);
  return 0;
end_0:;
}