diff options
Diffstat (limited to 'vms')
-rw-r--r-- | vms/perlvms.pod | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/vms/perlvms.pod b/vms/perlvms.pod index f43cbb0e46..48deedc4d2 100644 --- a/vms/perlvms.pod +++ b/vms/perlvms.pod @@ -575,10 +575,9 @@ B<SPAWN> at the DCL prompt. Perl waits for the subprocess to complete before continuing execution in the current process. As described in L<perlfunc>, the return value of C<system> is a fake "status" which follows -POSIX semantics; see the description of C<$?> in this document -for more detail. The actual VMS exit status of the subprocess -is available in C<$^S> (as long as you haven't used another Perl -function that resets C<$?> and C<$^S> in the meantime). +POSIX semantics unless the pragma C<use vmsish status> is in +effect; see the description of C<$?> in this document for more +detail. =item time @@ -845,15 +844,11 @@ severity was success or informational, these bits are all 0; otherwise, they contain the severity value shifted left one bit. As a result, C<$?> will always be zero if the subprocess' exit status indicated successful completion, and non-zero if a -warning or error occurred. The actual VMS exit status may -be found in C<$^S> (q.v.). +warning or error occurred. -=item $^S - -Under VMS, this is the 32-bit VMS status value returned by the -last subprocess to complete. Unlike C<$?>, no manipulation -is done to make this look like a POSIX wait(5) value, so it -may be treated as a normal VMS status value. +The pragma C<use vmsish 'status'> makes C<$?> reflect the actual +VMS exit status, instead of the default emulation of POSIX status +described above. =item $| |