Re: Author tests and IPC::System::Simple
G'day Gregor / debian-perl,
gregor herrmann wrote:
> ----------------------------------------------------------------------
> $VAR1 = '"/usr/bin/perl" died to signal "ABRT" (6) and dumped core at t/08_core.t line 41
> ';
> ----------------------------------------------------------------------
>
> My guess is that Perl 5.8.8 and Perl 5.10.0 just have different error
> messages ...
Except that these error messages are generated by IPC::System::Simple (ISS),
and are exactly what we're testing, so they really shouldn't be different.
If a process is dumping core, and ISS is not reporting it, then that's a bug!
The way in which ISS looks for core dumps is by using:
WCOREDUMP($?), if defined in POSIX.pm
$? & 128, otherwise
At least on Etch/5.8.8, the WCOREDUMP macro is not defined. There's a
possibility that on 5.10.0 it *is* defined, but isn't working how we expect.
We can test for that easily enough:
perl -MPOSIX=WCOREDUMP -e1
If that gives an error (which I expect it will), then we don't have
WCOREDUMP defined, and are using our internal logic.
If we're not using WCOREDUMP, then we face the disturbing possibility that
we're generating a core dump, and ($? & 128) is false when that occurs.
Is there any chance you can grab my development copy of IPC::System::Simple,
either via HTTP with:
http://github.com/pfenwick/ipc-system-simple/tarball/master
or git:
git clone git://github.com/pfenwick/ipc-system-simple.git
and run the tests against that? The new code should display the contents of
$? on the failing core tests, which will give us some clues as to where the
problem lies.
Thanks very much for reporting this. It's really appreciated!
Paul
--
Paul Fenwick <pjf@perltraining.com.au> | http://perltraining.com.au/
Director of Training | Ph: +61 3 9354 6001
Perl Training Australia | Fax: +61 3 9354 2681
Reply to: