diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 2000-04-24 04:56:08 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 2000-04-24 04:56:08 +0000 |
commit | 811a4de936cdd31b057f2952efd5352bfccbaef0 (patch) | |
tree | 7f96a2bd66ab4c2e752ed8950df1f17601efc71f | |
parent | 874b18133d8cd6ab29e7805e88ba1ecb668b632a (diff) | |
download | perl-811a4de936cdd31b057f2952efd5352bfccbaef0.tar.gz |
caller() wasn't returning the right number of elements for
eval {...}
p4raw-id: //depot/perl@5914
-rw-r--r-- | pp_ctl.c | 8 | ||||
-rwxr-xr-x | t/pragma/warn/9enabled | 2 |
2 files changed, 8 insertions, 2 deletions
@@ -1521,15 +1521,21 @@ PP(pp_caller) else PUSHs(sv_2mortal(newSViv(gimme & G_ARRAY))); if (CxTYPE(cx) == CXt_EVAL) { + /* eval STRING */ if (cx->blk_eval.old_op_type == OP_ENTEREVAL) { PUSHs(cx->blk_eval.cur_text); PUSHs(&PL_sv_no); } - /* try blocks have old_namesv == 0 */ + /* require */ else if (cx->blk_eval.old_namesv) { PUSHs(sv_2mortal(newSVsv(cx->blk_eval.old_namesv))); PUSHs(&PL_sv_yes); } + /* eval BLOCK (try blocks have old_namesv == 0) */ + else { + PUSHs(&PL_sv_undef); + PUSHs(&PL_sv_undef); + } } else { PUSHs(&PL_sv_undef); diff --git a/t/pragma/warn/9enabled b/t/pragma/warn/9enabled index 7facf996f5..55642ffadf 100755 --- a/t/pragma/warn/9enabled +++ b/t/pragma/warn/9enabled @@ -332,7 +332,7 @@ print $@ ; EXPECT Usage: warnings::warn([category,] 'message') at - line 4 unknown warnings category 'fred' at - line 6 - require 0 called at - line 6 + eval {...} called at - line 6 ######## --FILE-- abc.pm |