++ed by:

172 PAUSE users
155 non-PAUSE users.

Gurusamy Sarathy


vmsish - Perl pragma to control VMS-specific language features


    use vmsish;

    use vmsish 'status';        # or '$?'
    use vmsish 'exit';
    use vmsish 'time';
    use vmsish 'hushed';

    use vmsish;
    no vmsish 'time';


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'.

vmsish status

This makes $? and system return the native VMS exit status instead of emulating the POSIX exit status.

vmsish exit

This makes exit 1 produce a successful exit (with status SS$_NORMAL), instead of emulating UNIX exit(), which considers exit 1 to indicate an error. As with the CRTL's exit() function, exit 0 is also mapped to an exit status of SS$_NORMAL, and any other argument to exit() is used directly as Perl's exit status.

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).

vmsish hushed

This supresses printing of VMS status messages to SYS$OUTPUT and SYS$ERROR if Perl terminates with an error status. This primarily effects error exits from things like compiler errors or "standard Perl" runtime errors, where text error messages are also generated by Perl.

The error exits from inside VMS.C are generally more serious, and are not supressed.

See "Pragmatic Modules" in perlmod.