| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • Want to organize your cloud files? Sign up for a free webinar to see how Dokkio (a new product from PBworks) can help you find, organize, and collaborate on your Drive, Gmail, Dropbox, and Slack files: Weds, May 27 at 2PM Eastern / 11AM Pacific
View
 

FindEvalWarnings

Page history last edited by David B 11 years, 2 months ago

Find where the eval warning is coming from:

 

 

#!/usr/bin/perl

use strict;
use warnings; # This directive causes Perl to warn you about dubious coding
use Carp ();

# This overrides the way warnings work, "cluck"ing so you know the
# call stack at the time of the eval
local $SIG{__WARN__} = &Carp::cluck;

sub greetings { print "Hello" }

eval 'sub greetings { print "Hi" }';

 

Changing the warning handler (the line local $SIG...etc) changes this:

 

 

$ ./s.pl
Subroutine greetings redefined at (eval 1) line 1.

 

To this:

 

 

$ ./s.pl
Subroutine greetings redefined at (eval 1) line 1.
        eval 'sub greetings { print "Hi" }
;' called at ./s.pl line 11

Comments (0)

You don't have permission to comment on this page.