At 11:03 PM -0500 1/22/06, John E. Malmberg wrote: >John E. Malmberg wrote: >>Craig A. Berry wrote: >> >>>At 8:15 PM -0500 1/21/06, John E. Malmberg wrote: >>>$ perl harness [.op]stat.t >>>[.op]stat....dubious >>> Test returned status 12 (wstat 1024, 0x400) >>> (VMS status is 12) >>>FAILED--1 test script could be run, alas--no output ever seen >>>%SYSTEM-F-ACCVIO, access violation, reason mask=00, > >So far, this seems to be based on several phase of the moon issues. >I have placed comments in a copy [.op]stat.t1 to get it down to the minimum >code that will reproduce an access violation with every run. > >When I extract this code into a separate module, the access violation does not >occur. > >I can also not reproduce the access violation when running it in the debugger. > >This usually means an uninitialized variable, as the debugger tends to clear >stack as it runs. > >By adding in print STDERR statements to the [.op]stat.t1, I was able to >isolate where the failure is happening. > >The access violation is occurring on the line below when $Null = '_NLA0:', but >not when it is '/dev/null'. > > -e $Null; > >It does not occur when $Null is replaced by either of the above text constants. > >It looks like the next step is to put some fprintf and fputs calls to write >output to stderr for the routines that should be processing the above >statement to see if the exact location of the access violation can be found. >Maybe once I start looking at that code it may become obvious. >
If I define DECC_BUG_DEVNULL in the environment, I can run several times in a row with no accvios. Do you have that defined in your normal test environment? That would explain why you weren't seeing the failure in your test runs. I think this is something you added and I don't fully understand what it does. It looks like the default behavior is now to skip our old code that concocted its own stat values for the null device, but defining DECC_BUG_DEVNULL reverts to the old behavior. So stepping through Perl_flex_stat_int while processing the null device with the logical turned off might lead to further clues about what's not getting initialized. -- ________________________________________ Craig A. Berry mailto:[EMAIL PROTECTED] "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser