memnoch has asked for the wisdom of the Perl Monks concerning the following question:
Dear Monks,
The following code does not compile:
and produces the following output:use strict; use warnings; use Carp qw(croak); package Test; #use Carp qw(croak); sub croak_test { croak "this is a test"; } Test::croak_test;
But if I put the "use Carp qw(croak);" statement after the package it does work:String found where operator expected at croaktest.pl line 8, near "cro +ak "this is a test"" (Do you need to predeclare croak?) syntax error at croaktest.pl line 8, near "croak "this is a test"" croaktest.pl had compilation errors.
I don't understand why the "use Carp qw(croak)" seemingly must be declared after the package, but the "use strict" doesn't. How could I determine what is necessary for other "use" statements?use strict; use warnings; #use Carp qw(croak); package Test; use Carp qw(croak); sub croak_test { croak "this is a test"; } Test::croak_test;
If someone could offer some insight as to what I'm not understanding, I'd really appreciate it.
Thank you,
memnoch
memnoch
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Use of Carp outside of package won't compile...
by Fletch (Bishop) on Dec 18, 2007 at 16:23 UTC | |
Re: Use of Carp outside of package won't compile...
by ikegami (Patriarch) on Dec 18, 2007 at 16:43 UTC | |
Re: Use of Carp outside of package won't compile...
by shmem (Chancellor) on Dec 18, 2007 at 16:38 UTC | |
Re: Use of Carp outside of package won't compile...
by friedo (Prior) on Dec 18, 2007 at 16:24 UTC | |
Re: Use of Carp outside of package won't compile...
by ikegami (Patriarch) on Dec 18, 2007 at 16:50 UTC | |
Re: Use of Carp outside of package won't compile...
by sundialsvc4 (Abbot) on Dec 18, 2007 at 16:46 UTC | |
by Fletch (Bishop) on Dec 18, 2007 at 17:09 UTC | |
Re: Use of Carp outside of package won't compile...
by benizi (Hermit) on Dec 20, 2007 at 06:06 UTC | |
Re: Use of Carp outside of package won't compile...
by sfink (Deacon) on Dec 20, 2007 at 05:22 UTC |
Back to
Seekers of Perl Wisdom