On Tue, May 04, 2004 at 09:49:07AM +0200, Steffen Goeldner wrote:

> Paul Johnson wrote:
> 
> > That's odd.  I would have expected at least three "skipped" messages, or
> > did not just not send them?
> 
> I sent the complete output.

Hmmm.  That's strange.  I suppose $^O is still "MSWin32" under Borland
and NT 4?

> > Urgh.  That probably indicates a crash while Devel::Cover is trying to
> > collect the last of the data.  Is is possible for you to test under
> > 5.8.x?
> 
> Not in a little while. But I have a small test case (eval.pl):
> 
>   use Test::More;
>   plan tests => 1;
>   eval { die "X\n" };
>   pass( $@ );
> 
> Here the output of perl eval.pl:
> 
>   1..1
>   ok 1 - X
> 
> and here the output of perl -MDevel::Cover eval.pl:
> 
>   1..1
>   ok 1 - X
> 
>   # Looks like your test died just after 1.
> 
> Now, I fake 'use Test::More;' (eval2.pl):
> 
>   sub plan { print "*** @_\n"}
>   sub pass { print "*** @_\n"}
>   $SIG{__DIE__} = sub {
>     print "!!! @_\n";
>     for( my $stack = 0;  my $sub = (CORE::caller($stack))[3];  $stack++ ) {
>       print "  !!! $stack $sub\n";
>     }
>   };
>   plan tests => 1;
>   eval { die "X\n" };
>   pass( $@ );
> 
> The $SIG{__DIE__} handler fakes that of Test::Builder 0.17 line 1285.
> Here the output of perl eval2.pl:
> 
>   *** tests 1
>   !!! X
> 
>     !!! 0 main::__ANON__
>     !!! 1 (eval)
>   *** X
> 
> and here the output of perl -MDevel::Cover eval2.pl:
> 
>   *** tests 1
>   !!! X
> 
>     !!! 0 main::__ANON__[eval2.pl:8]
>   *** X
> 
> Please note that !!! 1 (eval) is missing, which leads to that dubious
> 
>   # Looks like your test died just after ...

Thanks for the excellent test cases.  As it turns out, I can reproduce
the results exactly on 5.6.1, 5.6.2, 5.8.0, 5.8.1 and 5.8.2 on linux,
but 5.8.3, 5.8.4 and bleadperl work correctly.

Given that 5.8.2 is still pretty recent I'll investigate further and see
what I can do.

Thanks again,

-- 
Paul Johnson - [EMAIL PROTECTED]
http://www.pjcj.net

Reply via email to