diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/POSIX.pm')
-rw-r--r-- | Master/tlpkg/tlperl/lib/POSIX.pm | 46 |
1 files changed, 42 insertions, 4 deletions
diff --git a/Master/tlpkg/tlperl/lib/POSIX.pm b/Master/tlpkg/tlperl/lib/POSIX.pm index 6fc0e7518e0..05bdbbe7e6d 100644 --- a/Master/tlpkg/tlperl/lib/POSIX.pm +++ b/Master/tlpkg/tlperl/lib/POSIX.pm @@ -4,7 +4,7 @@ use warnings; our ($AUTOLOAD, %SIGRT); -our $VERSION = '1.53_01'; +our $VERSION = '1.65'; require XSLoader; @@ -234,7 +234,7 @@ sub sprintf { } sub load_imports { -my %default_export_tags = ( +my %default_export_tags = ( # cf. exports policy below assert_h => [qw(assert NDEBUG)], @@ -389,7 +389,22 @@ my %default_export_tags = ( utime_h => [], ); -my %other_export_tags = ( +if ($^O eq 'MSWin32') { + $default_export_tags{winsock_h} = [qw( + WSAEINTR WSAEBADF WSAEACCES WSAEFAULT WSAEINVAL WSAEMFILE WSAEWOULDBLOCK + WSAEINPROGRESS WSAEALREADY WSAENOTSOCK WSAEDESTADDRREQ WSAEMSGSIZE + WSAEPROTOTYPE WSAENOPROTOOPT WSAEPROTONOSUPPORT WSAESOCKTNOSUPPORT + WSAEOPNOTSUPP WSAEPFNOSUPPORT WSAEAFNOSUPPORT WSAEADDRINUSE + WSAEADDRNOTAVAIL WSAENETDOWN WSAENETUNREACH WSAENETRESET WSAECONNABORTED + WSAECONNRESET WSAENOBUFS WSAEISCONN WSAENOTCONN WSAESHUTDOWN + WSAETOOMANYREFS WSAETIMEDOUT WSAECONNREFUSED WSAELOOP WSAENAMETOOLONG + WSAEHOSTDOWN WSAEHOSTUNREACH WSAENOTEMPTY WSAEPROCLIM WSAEUSERS + WSAEDQUOT WSAESTALE WSAEREMOTE WSAEDISCON WSAENOMORE WSAECANCELLED + WSAEINVALIDPROCTABLE WSAEINVALIDPROVIDER WSAEPROVIDERFAILEDINIT + WSAEREFUSED)]; +} + +my %other_export_tags = ( # cf. exports policy below fenv_h => [qw( FE_DOWNWARD FE_TONEAREST FE_TOWARDZERO FE_UPWARD fegetround fesetround )], @@ -403,8 +418,27 @@ my %other_export_tags = ( )], stdlib_h_c99 => [ @{$default_export_tags{stdlib_h}}, 'strtold' ], + + nan_payload => [ qw(getpayload setpayload setpayloadsig issignaling) ], + + signal_h_si_code => [qw( + ILL_ILLOPC ILL_ILLOPN ILL_ILLADR ILL_ILLTRP ILL_PRVOPC ILL_PRVREG + ILL_COPROC ILL_BADSTK + FPE_INTDIV FPE_INTOVF FPE_FLTDIV FPE_FLTOVF FPE_FLTUND + FPE_FLTRES FPE_FLTINV FPE_FLTSUB + SEGV_MAPERR SEGV_ACCERR + BUS_ADRALN BUS_ADRERR BUS_OBJERR + TRAP_BRKPT TRAP_TRACE + CLD_EXITED CLD_KILLED CLD_DUMPED CLD_TRAPPED CLD_STOPPED CLD_CONTINUED + POLL_IN POLL_OUT POLL_MSG POLL_ERR POLL_PRI POLL_HUP + SI_USER SI_QUEUE SI_TIMER SI_ASYNCIO SI_MESGQ + )], ); +# exports policy: +# - new functions may not be added to @EXPORT, only to @EXPORT_OK +# - new SHOUTYCONSTANTS are OK to add to @EXPORT + { # De-duplicate the export list: my ( %export, %export_ok ); @@ -414,8 +448,12 @@ my %other_export_tags = ( # @EXPORT are actually shared hash key scalars, which will save some memory. our @EXPORT = keys %export; + # you do not want to add symbols to the following list. add a new tag instead our @EXPORT_OK = (qw(close lchown nice open pipe read sleep times write - printf sprintf), + printf sprintf lround), + # lround() should really be in the :math_h_c99 tag, but + # we're too far into the 5.24 code freeze for that to be + # done now. This can be revisited in the 5.25.x cycle. grep {!exists $export{$_}} keys %reimpl, keys %replacement, keys %export_ok); our %EXPORT_TAGS = ( %default_export_tags, %other_export_tags ); |