On Jul 21, 2014, at 7:41 PM, John E. Malmberg <wb8...@qsl.net> wrote:
> On 7/21/2014 7:06 PM, Craig A. Berry wrote: >> >> DECC$FILENAME_UNIX_REPORT has nothing at all to do with exit statuses. Well, I wouldn't think it did, but for some reason the two are wired together: s = decc$feature_get_index("DECC$FILENAME_UNIX_REPORT"); if (s >= 0) { decc_filename_unix_report = decc$feature_get_value(s, 1); if (decc_filename_unix_report > 0) { decc_filename_unix_report = 1; vms_posix_exit = 1; } else decc_filename_unix_report = 0; } I think I'm going to regard that as a bug and separate them. > > The perlvms documentation needs to be updated. > > http://perldoc.perl.org/perlvms.html > > The PERL_VMS_POSIX_EXIT needed to be 1 to get it active. "ENABLE" did not > work. Perl VMS documentation only mentions "ENABLE" The problem is that for this feature and several others we have code that looks like: status = simple_trnlnm ("PERL_VMS_POSIX_EXIT", val_str, sizeof(val_str)); if ($VMS_STATUS_SUCCESS(status)) { but simple_trnlnm does not return a VMS status. It returns zero on failure or the length the equivalence name on success. "1" has an odd length and is considered a success; "ENABLE" has an even length and is considered a failure. That is definitely a bug, apparently one I introduced at <http://perl5.git.perl.org/perl.git/commit/8dc9d3390b257b55ff81dfb908f4621b80760d78?f=vms/vms.c>. Sorry about that. I will fix it soonish, possibly even in time for 5.20.1. ________________________________________ Craig A. Berry mailto:craigbe...@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser