1850e2753Smillert#!./perl 2850e2753Smillert 3*91f110e0Safresh1BEGIN { 4*91f110e0Safresh1 chdir 't' if -d 't'; 5*91f110e0Safresh1 push @INC, '../lib'; 6*91f110e0Safresh1 require './test.pl'; 7*91f110e0Safresh1} 8*91f110e0Safresh1 9850e2753Smillertuse strict; 10850e2753Smillertuse warnings; 11850e2753Smillert 12*91f110e0Safresh1plan tests => 2; 13850e2753Smillert 14850e2753Smillertpackage Foo; 15850e2753Smillert 16850e2753Smillertuse overload; 17850e2753Smillert 18850e2753Smillertsub import 19850e2753Smillert{ 20*91f110e0Safresh1 overload::constant 'integer' => sub { return shift }; 21850e2753Smillert} 22850e2753Smillert 23850e2753Smillertpackage main; 24850e2753Smillert 25850e2753SmillertBEGIN { $INC{'Foo.pm'} = "/lib/Foo.pm" } 26850e2753Smillert 27850e2753Smillertuse Foo; 28850e2753Smillert 29850e2753Smillertmy $result = eval "5+6"; 30850e2753Smillertmy $error = $@; 31*91f110e0Safresh1$result //= ''; 32850e2753Smillert 33*91f110e0Safresh1is ($error, '', "No exception was thrown with an overload::constant 'integer' inside an eval."); 34*91f110e0Safresh1is ($result, 11, "Correct solution"); 35850e2753Smillert 36