Mailing List Archive

Diagnostic message not in perldiag
The warning:

Scalar found where operator expected at (%s) line %s, near "%s"

does not appear in perldiag in my copy of Perl 5.001m.

Could anyone give me the explaination for this error? I'm getting lots of
these within evals, but I can't find any error in my code:

-- begin excerpt of code --

sub call_service {
my ($service, $obj_dir, $args) = @_;

[.Autoloading of $service if not already defined in the Services package]

my $result = eval "Services::$service(\$obj_dir, \$args)";
die "Died evaling $service: $@" if $@;
$result;
}

-- end excerpt of code --

which seems pretty straight-forward. $obj_dir is a reference to a hash.

The errors look like:

Scalar found where operator expected at (eval 6) line 1, near "Services::forum_title($obj_dir"
Scalar found where operator expected at (eval 11) line 1, near "Services::render_starter($obj_dir"
Scalar found where operator expected at (eval 17) line 1, near "Services::number_messages($obj_dir"
Scalar found where operator expected at (eval 23) line 1, near "Services::conference_root_url($obj_dir"

Whatever. It's not a fatal error and my code works as expected.

--
jared@organic.com / Organic Online / <URL:http://www.hmc.edu/~jared/home>

"Remember, only users lose drugs." -- from Richard Stueven