diff options
author | Nicholas Clark <nick@ccl4.org> | 2009-11-29 16:42:42 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2009-11-29 16:42:42 +0000 |
commit | f5fa9033b8c1fdcbd7710850b3b0380d6b937853 (patch) | |
tree | 682c655948a9531e21504131963eda26eef5954b | |
parent | a917e5da001c2e01ede95e432a105b1aa899f1e5 (diff) | |
download | perl-f5fa9033b8c1fdcbd7710850b3b0380d6b937853.tar.gz |
Fix RT #70862 by converting ERRSV to GvSVn() to ensure a non-NULL GvSV().
-rw-r--r-- | perl.h | 2 | ||||
-rw-r--r-- | t/op/eval.t | 17 |
2 files changed, 17 insertions, 2 deletions
@@ -1310,7 +1310,7 @@ EXTERN_C char *crypt(const char *, const char *); # define SS_NORMAL 0 #endif -#define ERRSV GvSV(PL_errgv) +#define ERRSV GvSVn(PL_errgv) #ifdef PERL_CORE # define DEFSV (0 + GvSVn(PL_defgv)) #else diff --git a/t/op/eval.t b/t/op/eval.t index 071b2fa05c..4daf0b96e1 100644 --- a/t/op/eval.t +++ b/t/op/eval.t @@ -6,7 +6,7 @@ BEGIN { require './test.pl'; } -print "1..99\n"; +print "1..101\n"; eval 'print "ok 1\n";'; @@ -557,3 +557,18 @@ $test++; print "ok $test - RT 63110\n"; $test++; } + +curr_test($test); + +fresh_perl_is(<<'EOP', "ok\n", undef, 'RT #70862'); +$::{'@'}=''; +eval {}; +print "ok\n"; +EOP + +fresh_perl_is(<<'EOP', "ok\n", undef, 'variant of RT #70862'); +eval { + $::{'@'}=''; +}; +print "ok\n"; +EOP |