#include <perms.h>

//          Edinburgh IMP77 Compiler - Version 8.4
//
//     1  %recordformat sockaddr(%integer whatever)

struct SOCKADDR {
  union {
    struct {
      int WHATEVER;
    };
  };
};

//     2
//     3  %externalroutine connect(%integer sockfd, %record (sockaddr) %name addr, %integer addlen)

void CONNECT(int SOCKFD, struct SOCKADDR *ADDR, int ADDLEN) {
  //     4     %systemroutinespec connect(%integer sockfd, %record (sockaddr) %name addr, %integer addlen)

  extern void CONNECT(int SOCKFD, struct SOCKADDR *ADDR, int ADDLEN);

  //     5     connect(sockfd, addr, addlen)

  CONNECT(SOCKFD, ADDR, ADDLEN);

  //     6  %end

  return;
} /* end of CONNECT */

//     7
//     8  %begin

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

  //     9    ! call connect?
  //    10  %end

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

//    11
//    12  %endoffile