diff options
author | Hugo van der Sanden <hv@crypt.org> | 2002-07-08 18:00:33 +0100 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-07-08 19:10:29 +0000 |
commit | d2ccd3cbfc4a43ae3c17071c87b4d721f3560ad6 (patch) | |
tree | 1f3080e231cce7fcedc0016a3a3ce890a87276d2 /t | |
parent | 9f3698943a90afb22c82bdcf1624daed197996c5 (diff) | |
download | perl-d2ccd3cbfc4a43ae3c17071c87b4d721f3560ad6.tar.gz |
Re: [ID 20020626.011] wantarray() causes clobbering of unrelated vars outside the sub
Message-Id: <200207081600.g68G0Xw07553@crypt.compulink.co.uk>
p4raw-id: //depot/perl@17423
Diffstat (limited to 't')
-rwxr-xr-x | t/op/wantarray.t | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/t/op/wantarray.t b/t/op/wantarray.t index 4b6f37cf0f..28936f419c 100755 --- a/t/op/wantarray.t +++ b/t/op/wantarray.t @@ -1,6 +1,6 @@ #!./perl -print "1..7\n"; +print "1..9\n"; sub context { my ( $cona, $testnum ) = @_; my $conb = (defined wantarray) ? ( wantarray ? 'A' : 'S' ) : 'V'; @@ -17,4 +17,18 @@ scalar context('S',4); $a = scalar context('S',5); ($a) = context('A',6); ($a) = scalar context('S',7); + +{ + # [ID 20020626.011] incorrect wantarray optimisation + sub simple { wantarray ? 1 : 2 } + sub inline { + my $a = wantarray ? simple() : simple(); + $a; + } + my @b = inline(); + my $c = inline(); + print +(@b == 1 && "@b" eq "2") ? "ok 8\n" : "not ok 8\t# <@b>\n"; + print +($c == 2) ? "ok 9\n" : "not ok 9\t# <$c>\n"; +} + 1; |