Craig A. Berry wrote:
At 9:47 PM -0500 1/26/06, John E. Malmberg wrote:
I am also thinking of changing the code that looks up the logical
name DECC_BUG_DEVNULL to default to 1 unless the logical name is
>> present to turn it off.
So that means doing the old behavior by default?
Yes, until we can verify that the problem is fixed and which versions/
ECOs are needed. The old behavior is probably desired for any major
version of VMS that would need an ECO as CRTL ECO's may not be present.
In order to isolate this, I had to modify
Perl_vms_sig_to_condition() to call lib$signal(SS$_DEBUG) instead
>> of it's normal action.
This causes the VMS debugger to be entered on any exception.
I think it would be a useful feature to have a logical name like
PERL_EXCEPTION_DEBUG be able to enable this when needed.
I like it. One could get fancy and define the logical to a signal
number or condition value and trap only specific exceptions.
That turns out not the place to put the LIB$SIGNAL trap as that routine
is also called by kill()
I also want to convert the ino_t type copies and compares to be
macros in vmsish.t so that the references to _USE_STD_STAT can
>> be removed from vmsish.t.
As far as I can tell, st_ino is never a pointer type. The standard
says that it is of "extended integral type". So it seems pretty safe
to me if we just always pass it by address. On the other hand,
defining macros in vmsish.h so that we do comparisons and copies
consistently makes sense.
I am making a test run now with the /DEV/NULL and st_ino macro changes
to see how it works.
The LIB$SIGNAL hack should be in it's own patch, and it may need to be
in the Perl_csighandlerp procedure.
-John
[EMAIL PROTECTED]
Personal Opinion Only