summaryrefslogtreecommitdiffstats
path: root/upstream/archlinux/man3/vmsish.3perl
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /upstream/archlinux/man3/vmsish.3perl
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/archlinux/man3/vmsish.3perl')
-rw-r--r--upstream/archlinux/man3/vmsish.3perl165
1 files changed, 165 insertions, 0 deletions
diff --git a/upstream/archlinux/man3/vmsish.3perl b/upstream/archlinux/man3/vmsish.3perl
new file mode 100644
index 00000000..5e413884
--- /dev/null
+++ b/upstream/archlinux/man3/vmsish.3perl
@@ -0,0 +1,165 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\" ========================================================================
+.\"
+.IX Title "vmsish 3perl"
+.TH vmsish 3perl 2024-02-11 "perl v5.38.2" "Perl Programmers Reference Guide"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH NAME
+vmsish \- Perl pragma to control VMS\-specific language features
+.SH SYNOPSIS
+.IX Header "SYNOPSIS"
+.Vb 1
+\& use vmsish;
+\&
+\& use vmsish \*(Aqstatus\*(Aq; # or \*(Aq$?\*(Aq
+\& use vmsish \*(Aqexit\*(Aq;
+\& use vmsish \*(Aqtime\*(Aq;
+\&
+\& use vmsish \*(Aqhushed\*(Aq;
+\& no vmsish \*(Aqhushed\*(Aq;
+\& vmsish::hushed($hush);
+\&
+\& use vmsish;
+\& no vmsish \*(Aqtime\*(Aq;
+.Ve
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+If no import list is supplied, all possible VMS-specific features are
+assumed. Currently, there are four VMS-specific features available:
+\&'status' (a.k.a '$?'), 'exit', 'time' and 'hushed'.
+.PP
+If you're not running VMS, this module does nothing.
+.ie n .IP """vmsish status""" 6
+.el .IP "\f(CWvmsish status\fR" 6
+.IX Item "vmsish status"
+This makes \f(CW$?\fR and \f(CW\*(C`system\*(C'\fR return the native VMS exit status
+instead of emulating the POSIX exit status.
+.ie n .IP """vmsish exit""" 6
+.el .IP "\f(CWvmsish exit\fR" 6
+.IX Item "vmsish exit"
+This makes \f(CW\*(C`exit 1\*(C'\fR produce a successful exit (with status SS$_NORMAL),
+instead of emulating UNIX \fBexit()\fR, which considers \f(CW\*(C`exit 1\*(C'\fR to indicate
+an error. As with the CRTL's \fBexit()\fR function, \f(CW\*(C`exit 0\*(C'\fR is also mapped
+to an exit status of SS$_NORMAL, and any other argument to \fBexit()\fR is
+used directly as Perl's exit status.
+.ie n .IP """vmsish time""" 6
+.el .IP "\f(CWvmsish time\fR" 6
+.IX Item "vmsish time"
+This makes all times relative to the local time zone, instead of the
+default of Universal Time (a.k.a Greenwich Mean Time, or GMT).
+.ie n .IP """vmsish hushed""" 6
+.el .IP "\f(CWvmsish hushed\fR" 6
+.IX Item "vmsish hushed"
+This suppresses printing of VMS status messages to SYS$OUTPUT and
+SYS$ERROR if Perl terminates with an error status, and allows
+programs that are expecting "unix-style" Perl to avoid having to parse
+VMS error messages. It does not suppress any messages from Perl
+itself, just the messages generated by DCL after Perl exits. The DCL
+symbol \f(CW$STATUS\fR will still have the termination status, but with a
+high-order bit set:
+.Sp
+EXAMPLE:
+ $ perl \-e"exit 44;" Non-hushed error exit
+ \f(CW%SYSTEM\fR\-F\-ABORT, abort DCL message
+ $ show sym \f(CW$STATUS\fR
+ \f(CW$STATUS\fR == "%X0000002C"
+.Sp
+.Vb 3
+\& $ perl \-e"use vmsish qw(hushed); exit 44;" Hushed error exit
+\& $ show sym $STATUS
+\& $STATUS == "%X1000002C"
+.Ve
+.Sp
+The 'hushed' flag has a global scope during compilation: the \fBexit()\fR or
+\&\fBdie()\fR commands that are compiled after 'vmsish hushed' will be hushed
+when they are executed. Doing a "no vmsish 'hushed'" turns off the
+hushed flag.
+.Sp
+The status of the hushed flag also affects output of VMS error
+messages from compilation errors. Again, you still get the Perl
+error message (and the code in \f(CW$STATUS\fR)
+.Sp
+EXAMPLE:
+ use vmsish 'hushed'; # turn on hushed flag
+ use Carp; # Carp compiled hushed
+ exit 44; # will be hushed
+ croak('I die'); # will be hushed
+ no vmsish 'hushed'; # turn off hushed flag
+ exit 44; # will not be hushed
+ croak('I die2'): # WILL be hushed, croak was compiled hushed
+.Sp
+You can also control the 'hushed' flag at run-time, using the built-in
+routine \fBvmsish::hushed()\fR. Without argument, it returns the hushed status.
+Since vmsish::hushed is built-in, you do not need to "use vmsish" to call
+it.
+.Sp
+EXAMPLE:
+ if ($quiet_exit) {
+ \fBvmsish::hushed\fR\|(1);
+ }
+ print "Sssshhhh...I'm hushed...\en" if \fBvmsish::hushed()\fR;
+ exit 44;
+.Sp
+Note that an \fBexit()\fR or \fBdie()\fR that is compiled 'hushed' because of "use
+vmsish" is not un-hushed by calling \fBvmsish::hushed\fR\|(0) at runtime.
+.Sp
+The messages from error exits from inside the Perl core are generally
+more serious, and are not suppressed.
+.PP
+See "Perl Modules" in perlmod.