Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the Devel-Cover CPAN distribution.

Report information
The Basics
Id: 47588
Status: resolved
Priority: 0/
Queue: Devel-Cover

People
Owner: Nobody in particular
Requestors: JMASTROS [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.64
Fixed in: (no value)



Subject: require Path::Class::File->new("Foo.pm")
perl -MDevel::Cover -MPath::Class::File -e'require Path::Class::File->new("Foo.pm")' Will keep grabbing RAM until your system dies painfully, with naught but a Deep recursion on subroutine "Path::Class::File::stringify" at -e line 1. (Note that the same code, without Devel::Cover loaded, will work Just Fine.)
On Sun Jul 05 13:50:33 2009, JMASTROS wrote: Show quoted text
> perl -MDevel::Cover -MPath::Class::File -e'require > Path::Class::File->new("Foo.pm")' > > Will keep grabbing RAM until your system dies painfully, with naught
but Show quoted text
> a Deep recursion on subroutine "Path::Class::File::stringify" at -e
line Show quoted text
> 1. (Note that the same code, without Devel::Cover loaded, will work > Just Fine.)
FYI this is with at least perl 5.10.0 (debian/linux) and perl 5.8.8 (gentoo/linux), using D::C 0.64
Thanks very much for the report. With Path::Class 0.18, perl5.12.0-RC5 and the current development version of Devel::Cover I get the following: $ /usr/local/pkg/perl-5.12.0-RC5/bin/perl -Mblib -MDevel::Cover -MPath::Class::File -e 'require Path::Class::File->new("Foo.pm")' Devel::Cover: Can't find file "-e" (-e): ignored. Devel::Cover 0.65: Collecting coverage data for branch, condition, statement, subroutine and time. Pod coverage is unavailable. Please install Pod::Coverage from CPAN. Selecting packages matching: Ignoring packages matching: /Devel/Cover[./] ^t/ \.t$ ^test\.pl$ Ignoring packages in: . /usr/local/pkg/perl-5.12.0-RC5/lib/5.12.0 /usr/local/pkg/perl-5.12.0-RC5/lib/5.12.0/i686-linux /usr/local/pkg/perl-5.12.0-RC5/lib/site_perl/5.12.0 /usr/local/pkg/perl-5.12.0-RC5/lib/site_perl/5.12.0/i686-linux Can't locate Foo.pm in @INC (@INC contains: /home/pjcj/g/perl/dc/blib/arch /home/pjcj/g/perl/dc/blib/lib /home/pjcj/g/perl/dc/blib/arch /home/pjcj/g/perl/dc/blib/lib /usr/local/pkg/perl-5.12.0-RC5/lib/site_perl/5.12.0/i686-linux /usr/local/pkg/perl-5.12.0-RC5/lib/site_perl/5.12.0 /usr/local/pkg/perl-5.12.0-RC5/lib/5.12.0/i686-linux /usr/local/pkg/perl- 5.12.0-RC5/lib/5.12.0 .) at -e line 1. Devel::Cover: Writing coverage database to /home/pjcj/g/perl/dc/cover_db/runs/1271068734.11432.61284 ----------------------------------- ------ ------ ------ ------ ------ ------ File stmt bran cond sub time total ----------------------------------- ------ ------ ------ ------ ------ ------ Total n/a n/a n/a n/a n/a n/a ----------------------------------- ------ ------ ------ ------ ------ ------ which seems about right. So I'll close this, but please reopen it if necessary. Thanks again,
For completeness, the difference here seems to be that there is success with the new coverage collection method of replacing ops. If I use the old method of replacing the runops loop then I get a segfault. So that's nice ;-)