http://www.perlmonks.org?node_id=1011854


in reply to Re: How can I see a CPAN module's print message
in thread How can I see a CPAN module's print message

But why? As I can do it like this: MyPackage.pm
use strict; use warnings; { package MyPackage; use Carp; carp "print message"; } 1;
main.pl
use MyPackage; &main; sub main { }

Replies are listed 'Best First'.
Re^3: How can I see a CPAN module's print message
by Corion (Patriarch) on Jan 06, 2013 at 09:20 UTC

    Also consider that Perl will load the first file TieRegistry.pm it finds in @INC. Inspect the values of %INC to find out which file Perl loaded, and which one you edited. See perlvar and Data::Dumper.

    use TieRegistry; print Dumper \%INC;
Re^3: How can I see a CPAN module's print message
by tobyink (Canon) on Jan 06, 2013 at 10:01 UTC

    That line will print because it's not in a sub. A line inside a sub can only print when that sub is actually executed.

    (The exception to this rule being a line that is evaluated at compile time. But it would be unusual to do this.)

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
      Yes, so my print or carp in file scope(I mean not in any sub) should print the message if I "use" it I think.
Re^3: How can I see a CPAN module's print message
by Anonymous Monk on Jan 06, 2013 at 09:15 UTC