From: John E. Malmberg Date: Thu, 16 Jul 2009 02:45:57 +0000 (-0500) Subject: An update to the pod is in order for the PERL_VMS_POSIX_EXIT logical X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=d9ac7b6b660cff1409a0aa305d95403874c8725a;p=p5sagit%2Fp5-mst-13.2.git An update to the pod is in order for the PERL_VMS_POSIX_EXIT logical name. That should help you with what to put in the delta file. I forgot to indicate in the file that the DECC$FILENAME_UNIX_REPORT feature also activates the PERL_VMS_POSIX_EXIT mode. --- diff --git a/pod/perlvms.pod b/pod/perlvms.pod index b8993d8..a7203eb 100644 --- a/pod/perlvms.pod +++ b/pod/perlvms.pod @@ -1167,16 +1167,16 @@ is that setting C<$?> to zero results in the generic success value SS$_NORMAL, and setting C<$?> to a non-zero value results in the generic failure status SS$_ABORT. See also L. -With the future POSIX_EXIT mode set, setting C<$?> will cause the -new value to also be encoded into C<$^E> so that the either the -original parent or child exit status values of 0 to 255 -can be automatically recovered by C programs expecting _POSIX_EXIT -behavior. If both a parent and a child exit value are non-zero, then it -will be assumed that this is actually a VMS native status value to -be passed through. The special value of 0xFFFF is almost a NOOP as -it will cause the current native VMS status in the C library to -become the current native Perl VMS status, and is handled this way -as consequence of it known to not be a valid native VMS status value. +With the C logical name defined as "ENABLE", +setting C<$?> will cause the new value to also be encoded into C<$^E> +so that the either the original parent or child exit status values o + 0 to 255 can be automatically recovered by C programs expecting +_POSIX_EXIT behavior. If both a parent and a child exit value are +non-zero, then it will be assumed that this is actually a VMS native +status value to be passed through. The special value of 0xFFFF is +almost a NOOP as it will cause the current native VMS status in the +C library to become the current native Perl VMS status, and is handled +this way as a it is known to not be a valid native VMS status value. It is recommend that only values in range of normal UNIX parent or child status numbers, 0 to 255 are used. @@ -1186,10 +1186,15 @@ described above. This pragma also disables the conversion of non-zero values to SS$_ABORT when setting C<$?> in an END block (but zero will still be converted to SS$_NORMAL). -Do not use the pragma C with the future -POSIX_EXIT mode, as they are at times requesting conflicting -actions and the consequence of ignoring this advice will be -undefined to allow future improvements in the POSIX exit handling. +Do not use the pragma C with C +enabled, as they are at times requesting conflicting actions and the +consequence of ignoring this advice will be undefined to allow future +improvements in the POSIX exit handling. + +In general, with the enabled, more detailed information +will be availble in the exit status for DCL scripts or other native VMS tools, +and will give the expected information for Posix programs. It has not been +made the default for backward compatibility. =item $|