5 @ISA = (Exporter, AutoLoader, DynamicLoader);
7 $H{assert_h} = [qw(assert NDEBUG)];
9 $H{ctype_h} = [qw(isalnum isalpha iscntrl isdigit isgraph islower
10 isprint ispunct isspace isupper isxdigit tolower toupper)];
12 $H{dirent_h} = [qw(closedir opendir readdir rewinddir)];
14 $H{errno_h} = [qw(E2BIG EACCES EAGAIN EBADF EBUSY ECHILD EDEADLK EDOM
15 EEXIST EFAULT EFBIG EINTR EINVAL EIO EISDIR EMFILE
16 EMLINK ENAMETOOLONG ENFILE ENODEV ENOENT ENOEXEC ENOLCK
17 ENOMEM ENOSPC ENOSYS ENOTDIR ENOTEMPTY ENOTTY ENXIO
18 EPERM EPIPE ERANGE EROFS ESPIPE ESRCH EXDEV errno)];
20 $H{fcntl_h} = [qw(FD_CLOEXEC F_DUPFD F_GETFD F_GETFL F_GETLK F_RDLCK
21 F_SETFD F_SETFL F_SETLK F_SETLKW F_UNLCK F_WRLCK
22 O_ACCMODE O_APPEND O_CREAT O_EXCL O_NOCTTY O_NONBLOCK
23 O_RDONLY O_RDWR O_TRUNC O_WRONLY
25 SEEK_CUR SEEK_END SEEK_SET
26 S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU
27 S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG S_ISUID
28 S_IWGRP S_IWOTH S_IWUSR)];
30 $H{float_h} = [qw(DBL_DIG DBL_EPSILON DBL_MANT_DIG
31 DBL_MAX DBL_MAX_10_EXP DBL_MAX_EXP
32 DBL_MIN DBL_MIN_10_EXP DBL_MIN_EXP
33 FLT_DIG FLT_EPSILON FLT_MANT_DIG
34 FLT_MAX FLT_MAX_10_EXP FLT_MAX_EXP
35 FLT_MIN FLT_MIN_10_EXP FLT_MIN_EXP
37 LDBL_DIG LDBL_EPSILON LDBL_MANT_DIG
38 LDBL_MAX LDBL_MAX_10_EXP LDBL_MAX_EXP
39 LDBL_MIN LDBL_MIN_10_EXP LDBL_MIN_EXP)];
41 $H{grp_h} = [qw(getgrgid getgrnam)];
43 $H{limits_h} = [qw( ARG_MAX CHAR_BIT CHAR_MAX CHAR_MIN CHILD_MAX
44 INT_MAX INT_MIN LINK_MAX LONG_MAX LONG_MIN MAX_CANON
45 MAX_INPUT MB_LEN_MAX NAME_MAX NGROUPS_MAX OPEN_MAX
46 PATH_MAX PIPE_BUF SCHAR_MAX SCHAR_MIN SHRT_MAX SHRT_MIN
47 SSIZE_MAX STREAM_MAX TZNAME_MAX UCHAR_MAX UINT_MAX
48 ULONG_MAX USHRT_MAX _POSIX_ARG_MAX _POSIX_CHILD_MAX
49 _POSIX_LINK_MAX _POSIX_MAX_CANON _POSIX_MAX_INPUT
50 _POSIX_NAME_MAX _POSIX_NGROUPS_MAX _POSIX_OPEN_MAX
51 _POSIX_PATH_MAX _POSIX_PIPE_BUF _POSIX_SSIZE_MAX
52 _POSIX_STREADM_MAX _POSIX_TZNAME_MAX)];
54 $H{locale_h} = [qw(LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC
55 LC_TIME NULL localeconv setlocale)];
57 $H{math_h} = [qw(HUGE_VAL acos asin atan2 atan ceil cos cosh exp
58 fabs floor fmod frexp ldexp log10 log modf pow sin sinh
61 $H{pwd_h} = [qw(getpwnam getpwuid)];
63 $H{setjmp_h} = [qw(longjmp setjmp siglongjmp sigsetjmp)];
65 $H{signal_h} = [qw(SA_NOCLDSTOP SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE
66 SIGHUP SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV
67 SIGSTOP SIGTERM SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2
68 SIG_BLOCK SIG_DFL SIG_ERR SIG_IGN SIG_SETMASK SIG_UNBLOCK
69 kill raise sigaction signal sigpending sigprocmask
72 $H{stdarg_h} = [qw()];
74 $H{stddef_h} = [qw(NULL offsetof)];
76 $H{stdio_h} = [qw(BUFSIZ EOF FILENAME_MAX L_ctermid L_cuserid
77 L_tmpname NULL SEEK_CUR SEEK_END SEEK_SET STREAM_MAX
78 TMP_MAX stderr stdin stdout _IOFBF _IOLBF _IONBF
79 clearerr fclose fdopen feof ferror fflush fgetc fgetpos
80 fgets fileno fopen fprintf fputc fputs fread freopen
81 fscanf fseek fsetpos ftell fwrite getc getchar gets
82 perror printf putc putchar puts remove rename rewind
83 scanf setbuf setvbuf sprintf sscanf tmpfile tmpnam
84 ungetc vfprintf vprintf vsprintf)];
86 $H{stdlib_h} = [qw(EXIT_FAILURE EXIT_SUCCESS MB_CUR_MAX NULL RAND_MAX
87 abort abs atexit atof atoi atol bsearch calloc div exit
88 free getenv labs ldiv malloc mblen mbstowcs mbtowc
89 qsort rand realloc srand strtod strtol stroul system
92 $H{string_h} = [qw(NULL memchr memcmp memcpy memmove memset strcat
93 strchr strcmp strcoll strcpy strcspn strerror strlen
94 strncat strncmp strncpy strpbrk strrchr strspn strstr
97 $H{sys_stat_h} = [qw(S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU
98 S_ISBLK S_ISCHR S_ISDIR S_ISFIFO S_ISGID S_ISREG
99 S_ISUID S_IWGRP S_IWOTH S_IWUSR S_IXGRP S_IXOTH S_IXUSR
100 chmod fstat mkdir mkfifo stat umask)];
102 $H{sys_times_h} = [qw(times)];
104 $H{sys_types_h} = [qw()];
106 $H{sys_utsname_h} = [qw(uname)];
108 $H{sys_wait_h} = [qw(WEXITSTATUS WIFEXITED WIFSIGNALED WIFSTOPPED
109 WNOHANG WSTOPSIG WTERMSIG WUNTRACED wait waitpid)];
111 $H{termios_h} = [qw( B0 B110 B1200 B134 B150 B1800 B19200 B200 B2400
112 B300 B38400 B4800 B50 B600 B75 B9600 BRKINT CLOCAL
113 CREAD CS5 CS6 CS7 CS8 CSIZE CSTOPB ECHO ECHOE ECHOK
114 ECHONL HUPCL ICANON ICRNL IEXTEN IGNBRK IGNCR IGNPAR
115 INLCR INPCK ISIG ISTRIP IXOFF IXON NCCS NOFLSH OPOST
116 PARENB PARMRK PARODD TCIFLUSH TCIOFF TCIOFLUSH TCION
117 TCOFLUSH TCOOFF TCOON TCSADRAIN TCSAFLUSH TCSANOW
118 TOSTOP VEOF VEOL VERASE VINTR VKILL VMIN VQUIT VSTART
120 cfgetispeed cfgetospeed cfsetispeed cfsetospeed tcdrain
121 tcflow tcflush tcgetattr tcsendbreak tcsetattr )];
123 $H{time_h} = [qw(CLK_TCK CLOCKS_PER_SEC NULL asctime clock ctime
124 difftime gmtime localtime mktime strftime time tzset tzname)];
126 $H{unistd_h} = [qw(F_OK NULL R_OK SEEK_CUR SEEK_END SEEK_SET
127 STRERR_FILENO STDIN_FILENO STDOUT_FILENO W_OK X_OK
128 _PC_CHOWN_RESTRICTED _PC_LINK_MAX _PC_MAX_CANON
129 _PC_MAX_INPUT _PC_NAME_MAX _PC_NO_TRUNC _PC_PATH_MAX
130 _PC_PIPE_BUF _PC_VDISABLE _POSIX_CHOWN_RESTRICTED
131 _POSIX_JOB_CONTROL _POSIX_NO_TRUNC _POSIX_SAVED_IDS
132 _POSIX_VDISABLE _POSIX_VERSION _SC_ARG_MAX
133 _SC_CHILD_MAX _SC_CLK_TCK _SC_JOB_CONTROL
134 _SC_NGROUPS_MAX _SC_OPEN_MAX _SC_SAVED_IDS
135 _SC_STREAM_MAX _SC_TZNAME_MAX _SC_VERSION
136 _exit access alarm chdir chown close ctermid cuserid
137 dup2 dup execl execle execlp execv execve execvp fork
138 fpathconf getcwd getegid geteuid getgid getgroups
139 getlogin getpgrp getpid getppid getuid isatty link
140 lseek pathconf pause pipe read rmdir setgid setpgid
141 setsid setuid sleep sysconf tcgetpgrp tcsetpgrp ttyname
144 $H{utime_h} = [qw(utime)];
148 foreach $entry (@_) {
150 push(@mylist, @{$H{$entry}});
153 push(@mylist, $entry);
159 @EXPORT = expand qw(assert_h ctype_h dirent_h errno_h fcntl_h float_h
160 grp_h limits_h locale_h math_h pwd_h setjmp_h signal_h
161 stdarg_h stddef_h stdio_h stdlib_h string_h sys_stat_h
162 sys_times_h sys_types_h sys_utsname_h sys_wait_h
163 termios_h time_h unistd_h utime_h);
167 my @list = expand @_;
168 local $Exporter::ExportLevel = 1;
169 Exporter::import($this,@list);
173 if ($AUTOLOAD =~ /::(_?[a-z])/) {
174 $AutoLoader::AUTOLOAD = $AUTOLOAD;
175 goto &AutoLoader::AUTOLOAD
177 local $constname = $AUTOLOAD;
178 $constname =~ s/.*:://;
179 $val = constant($constname, $_[0]);
181 ($pack,$file,$line) = caller;
182 if ($! =~ /Invalid/) {
183 die "$constname is not a valid POSIX macro at $file line $line.\n";
186 die "Your vendor has not defined POSIX macro $constname, used at $file line $line.\n";
189 eval "sub $AUTOLOAD { $val }";
196 local ($mess, $pack, $file, $line) = @_;
197 die "Usage: POSIX::$mess at $file line $line\n";
201 local ($mess, $pack, $file, $line) = @_;
203 die "Unimplemented: POSIX::$mess at $file line $line\n";
213 delete $_POSIX{$_[0]};
218 package POSIX::SigAction;
221 bless {HANDLER => $_[1], MASK => $_[2], FLAGS => $_[3]};
226 usage "assert(expr)", caller if @_ != 1;
228 local ($pack,$file,$line) = caller;
229 die "Assertion failed at $file line $line\n";
234 usage "tolower(string)", caller if @_ != 1;
239 usage "toupper(string)", caller if @_ != 1;
244 usage "closedir(dirhandle)", caller if @_ != 1;
250 usage "opendir(directory)", caller if @_ != 1;
251 local($dirhandle) = &gensym;
252 opendir($dirhandle, $_[0])
254 : (ungensym($dirhandle), undef);
258 usage "readdir(dirhandle)", caller if @_ != 1;
263 usage "rewinddir(dirhandle)", caller if @_ != 1;
268 usage "errno()", caller if @_ != 0;
273 usage "creat(filename, mode)", caller if @_ != 2;
274 &open($_[0], &O_WRONLY | &O_CREAT | &O_TRUNC, $_[2]);
278 usage "fcntl(filehandle, cmd, arg)", caller if @_ != 3;
279 fcntl($_[0], $_[1], $_[2]);
283 usage "getgrgid(gid)", caller if @_ != 1;
288 usage "getgrnam(name)", caller if @_ != 1;
293 usage "atan2(x,y)", caller if @_ != 2;
298 usage "cos(x)", caller if @_ != 1;
303 usage "exp(x)", caller if @_ != 1;
308 usage "fabs(x)", caller if @_ != 1;
313 usage "log(x)", caller if @_ != 1;
318 usage "pow(x,exponent)", caller if @_ != 2;
323 usage "sin(x)", caller if @_ != 1;
328 usage "sqrt(x)", caller if @_ != 1;
333 usage "tan(x)", caller if @_ != 1;
338 usage "getpwnam(name)", caller if @_ != 1;
343 usage "getpwuid(uid)", caller if @_ != 1;
348 unimpl "longjmp() is C-specific: use die instead", caller;
352 unimpl "setjmp() is C-specific: use eval {} instead", caller;
356 unimpl "siglongjmp() is C-specific: use die instead", caller;
360 unimpl "sigsetjmp() is C-specific: use eval {} instead", caller;
364 usage "kill(pid, sig)", caller if @_ != 2;
369 usage "raise(sig)", caller if @_ != 1;
370 kill $$, $_[0]; # Is this good enough?
374 unimpl "offsetof() is C-specific, stopped", caller;
378 usage "clearerr(filehandle)", caller if @_ != 1;
383 unimpl "fclose() is C-specific--use close instead", caller;
387 usage "feof(filehandle)", caller if @_ != 1;
392 usage "fgetc(filehandle)", caller if @_ != 1;
397 unimpl "fgetpos(xxx)", caller if @_ != 123;
402 usage "fgets(filehandle)", caller if @_ != 1;
408 usage "fileno(filehandle)", caller if @_ != 1;
413 unimpl "fopen() is C-specific--use open instead", caller;
417 unimpl "fprintf() is C-specific--use printf instead", caller;
421 unimpl "fputc() is C-specific--use print instead", caller;
425 unimpl "fputs() is C-specific--use print instead", caller;
426 usage "fputs(string, handle)", caller if @_ != 2;
427 local($handle) = pop;
432 unimpl "fread() is C-specific--use read instead", caller;
433 unimpl "fread(xxx)", caller if @_ != 123;
438 unimpl "freopen() is C-specific--use open instead", caller;
439 unimpl "freopen(xxx)", caller if @_ != 123;
444 unimpl "fscanf() is C-specific--use <> and regular expressions instead", caller;
445 unimpl "fscanf(xxx)", caller if @_ != 123;
450 unimpl "fseek() is C-specific--use seek instead", caller;
451 unimpl "fseek(xxx)", caller if @_ != 123;
456 unimpl "fsetpos() is C-specific--use seek instead", caller;
457 unimpl "fsetpos(xxx)", caller if @_ != 123;
462 unimpl "ftell() is C-specific--use tell instead", caller;
463 unimpl "ftell(xxx)", caller if @_ != 123;
468 unimpl "fwrite() is C-specific--use print instead", caller;
469 unimpl "fwrite(xxx)", caller if @_ != 123;
474 usage "getc(handle)", caller if @_ != 1;
479 usage "getchar()", caller if @_ != 0;
484 usage "gets(handle)", caller if @_ != 1;
485 local($handle) = shift;
490 unimpl "perror() is C-specific--print $! instead", caller;
491 unimpl "perror(xxx)", caller if @_ != 123;
496 usage "printf(pattern, args...)", caller if @_ < 1;
501 unimpl "putc() is C-specific--use print instead", caller;
502 unimpl "putc(xxx)", caller if @_ != 123;
507 unimpl "putchar() is C-specific--use print instead", caller;
508 unimpl "putchar(xxx)", caller if @_ != 123;
513 unimpl "puts() is C-specific--use print instead", caller;
514 unimpl "puts(xxx)", caller if @_ != 123;
519 unimpl "remove(xxx)", caller if @_ != 123;
524 unimpl "rename(xxx)", caller if @_ != 123;
529 unimpl "rewind(xxx)", caller if @_ != 123;
534 unimpl "scanf(xxx)", caller if @_ != 123;
539 unimpl "setbuf(xxx)", caller if @_ != 123;
544 unimpl "setvbuf(xxx)", caller if @_ != 123;
549 unimpl "sprintf(xxx)", caller if @_ != 123;
554 unimpl "sscanf(xxx)", caller if @_ != 123;
559 unimpl "tmpfile(xxx)", caller if @_ != 123;
564 unimpl "tmpnam(xxx)", caller if @_ != 123;
569 unimpl "ungetc(xxx)", caller if @_ != 123;
574 unimpl "vfprintf(xxx)", caller if @_ != 123;
579 unimpl "vprintf(xxx)", caller if @_ != 123;
584 unimpl "vsprintf(xxx)", caller if @_ != 123;
589 unimpl "abort(xxx)", caller if @_ != 123;
594 usage "abs(x)", caller if @_ != 1;
599 unimpl "atexit() is C-specific: use END {} instead", caller;
603 unimpl "atof() is C-specific, stopped", caller;
607 unimpl "atoi() is C-specific, stopped", caller;
611 unimpl "atol() is C-specific, stopped", caller;
615 unimpl "bsearch(xxx)", caller if @_ != 123;
620 unimpl "calloc(xxx)", caller if @_ != 123;
625 unimpl "div(xxx)", caller if @_ != 123;
630 unimpl "exit(xxx)", caller if @_ != 123;
635 unimpl "free(xxx)", caller if @_ != 123;
640 unimpl "getenv(xxx)", caller if @_ != 123;
645 unimpl "labs(xxx)", caller if @_ != 123;
650 unimpl "ldiv(xxx)", caller if @_ != 123;
655 unimpl "malloc(xxx)", caller if @_ != 123;
660 unimpl "mblen(xxx)", caller if @_ != 123;
665 unimpl "mbstowcs(xxx)", caller if @_ != 123;
670 unimpl "mbtowc(xxx)", caller if @_ != 123;
675 unimpl "qsort(xxx)", caller if @_ != 123;
680 unimpl "rand(xxx)", caller if @_ != 123;
685 unimpl "realloc(xxx)", caller if @_ != 123;
690 unimpl "srand(xxx)", caller if @_ != 123;
695 unimpl "strtod(xxx)", caller if @_ != 123;
700 unimpl "strtol(xxx)", caller if @_ != 123;
705 unimpl "stroul(xxx)", caller if @_ != 123;
710 unimpl "system(xxx)", caller if @_ != 123;
715 unimpl "wcstombs(xxx)", caller if @_ != 123;
720 unimpl "wctomb(xxx)", caller if @_ != 123;
725 unimpl "memchr(xxx)", caller if @_ != 123;
730 unimpl "memcmp(xxx)", caller if @_ != 123;
735 unimpl "memcpy(xxx)", caller if @_ != 123;
740 unimpl "memmove(xxx)", caller if @_ != 123;
745 unimpl "memset(xxx)", caller if @_ != 123;
750 unimpl "strcat(xxx)", caller if @_ != 123;
755 unimpl "strchr(xxx)", caller if @_ != 123;
760 unimpl "strcmp(xxx)", caller if @_ != 123;
765 unimpl "strcoll(xxx)", caller if @_ != 123;
770 unimpl "strcpy(xxx)", caller if @_ != 123;
775 unimpl "strcspn(xxx)", caller if @_ != 123;
780 unimpl "strerror(xxx)", caller if @_ != 123;
785 unimpl "strlen(xxx)", caller if @_ != 123;
790 unimpl "strncat(xxx)", caller if @_ != 123;
795 unimpl "strncmp(xxx)", caller if @_ != 123;
800 unimpl "strncpy(xxx)", caller if @_ != 123;
805 unimpl "strpbrk(xxx)", caller if @_ != 123;
810 unimpl "strrchr(xxx)", caller if @_ != 123;
815 unimpl "strspn(xxx)", caller if @_ != 123;
820 unimpl "strstr(xxx)", caller if @_ != 123;
825 unimpl "strtok(xxx)", caller if @_ != 123;
830 unimpl "strxfrm(xxx)", caller if @_ != 123;
835 unimpl "chmod(xxx)", caller if @_ != 123;
840 unimpl "fstat(xxx)", caller if @_ != 123;
845 unimpl "mkdir(xxx)", caller if @_ != 123;
850 unimpl "mkfifo(xxx)", caller if @_ != 123;
855 unimpl "stat(xxx)", caller if @_ != 123;
860 unimpl "umask(xxx)", caller if @_ != 123;
865 unimpl "times(xxx)", caller if @_ != 123;
870 unimpl "wait(xxx)", caller if @_ != 123;
875 unimpl "waitpid(xxx)", caller if @_ != 123;
880 unimpl "cfgetispeed(xxx)", caller if @_ != 123;
885 unimpl "cfgetospeed(xxx)", caller if @_ != 123;
890 unimpl "cfsetispeed(xxx)", caller if @_ != 123;
895 unimpl "cfsetospeed(xxx)", caller if @_ != 123;
900 unimpl "tcdrain(xxx)", caller if @_ != 123;
905 unimpl "tcflow(xxx)", caller if @_ != 123;
910 unimpl "tcflush(xxx)", caller if @_ != 123;
915 unimpl "tcgetattr(xxx)", caller if @_ != 123;
920 unimpl "tcsendbreak(xxx)", caller if @_ != 123;
925 unimpl "tcsetattr(xxx)", caller if @_ != 123;
930 unimpl "asctime(xxx)", caller if @_ != 123;
935 unimpl "clock(xxx)", caller if @_ != 123;
940 unimpl "ctime(xxx)", caller if @_ != 123;
945 unimpl "difftime(xxx)", caller if @_ != 123;
950 unimpl "gmtime(xxx)", caller if @_ != 123;
955 unimpl "localtime(xxx)", caller if @_ != 123;
960 unimpl "mktime(xxx)", caller if @_ != 123;
965 unimpl "strftime(xxx)", caller if @_ != 123;
970 unimpl "time(xxx)", caller if @_ != 123;
975 unimpl "tzset(xxx)", caller if @_ != 123;
980 unimpl "tzname(xxx)", caller if @_ != 123;
985 unimpl "_exit(xxx)", caller if @_ != 123;
990 unimpl "access(xxx)", caller if @_ != 123;
995 unimpl "alarm(xxx)", caller if @_ != 123;
1000 unimpl "chdir(xxx)", caller if @_ != 123;
1005 unimpl "chown(xxx)", caller if @_ != 123;
1010 unimpl "close(xxx)", caller if @_ != 123;
1015 unimpl "ctermid(xxx)", caller if @_ != 123;
1020 unimpl "cuserid(xxx)", caller if @_ != 123;
1025 unimpl "dup2(xxx)", caller if @_ != 123;
1030 unimpl "dup(xxx)", caller if @_ != 123;
1035 unimpl "execl(xxx)", caller if @_ != 123;
1040 unimpl "execle(xxx)", caller if @_ != 123;
1045 unimpl "execlp(xxx)", caller if @_ != 123;
1050 unimpl "execv(xxx)", caller if @_ != 123;
1055 unimpl "execve(xxx)", caller if @_ != 123;
1060 unimpl "execvp(xxx)", caller if @_ != 123;
1065 usage "fork()", caller if @_ != 0;
1070 unimpl "fpathconf(xxx)", caller if @_ != 123;
1075 unimpl "getcwd(xxx)", caller if @_ != 123;
1080 unimpl "getegid(xxx)", caller if @_ != 123;
1085 unimpl "geteuid(xxx)", caller if @_ != 123;
1090 unimpl "getgid(xxx)", caller if @_ != 123;
1095 unimpl "getgroups(xxx)", caller if @_ != 123;
1100 unimpl "getlogin(xxx)", caller if @_ != 123;
1105 unimpl "getpgrp(xxx)", caller if @_ != 123;
1110 usage "getpid()", caller if @_ != 0;
1115 usage "getppid()", caller if @_ != 0;
1120 unimpl "getuid(xxx)", caller if @_ != 123;
1125 unimpl "isatty(xxx)", caller if @_ != 123;
1130 unimpl "link(xxx)", caller if @_ != 123;
1135 unimpl "lseek(xxx)", caller if @_ != 123;
1140 unimpl "pathconf(xxx)", caller if @_ != 123;
1145 unimpl "pause(xxx)", caller if @_ != 123;
1150 unimpl "pipe(xxx)", caller if @_ != 123;
1155 unimpl "read(xxx)", caller if @_ != 123;
1160 unimpl "rmdir(xxx)", caller if @_ != 123;
1165 unimpl "setgid(xxx)", caller if @_ != 123;
1170 unimpl "setpgid(xxx)", caller if @_ != 123;
1175 unimpl "setsid(xxx)", caller if @_ != 123;
1180 unimpl "setuid(xxx)", caller if @_ != 123;
1185 unimpl "sleep(xxx)", caller if @_ != 123;
1190 unimpl "sysconf(xxx)", caller if @_ != 123;
1195 unimpl "tcgetpgrp(xxx)", caller if @_ != 123;
1200 unimpl "tcsetpgrp(xxx)", caller if @_ != 123;
1205 unimpl "ttyname(xxx)", caller if @_ != 123;
1210 unimpl "unlink(xxx)", caller if @_ != 123;
1215 unimpl "write(xxx)", caller if @_ != 123;
1220 unimpl "utime(xxx)", caller if @_ != 123;