diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1999-07-18 03:51:03 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1999-07-18 03:51:03 +0000 |
commit | 2c15bef39460c09b2a7846a30a4fc1fc1c4f93e4 (patch) | |
tree | 956621b9bd6ef82607bc2044a25afda197257cef /t/op/goto.t | |
parent | 2aa1486d5d3f3b27276656f9b9ef842d3a21a386 (diff) | |
download | perl-2c15bef39460c09b2a7846a30a4fc1fc1c4f93e4.tar.gz |
remove spurious newSTATEOP() that causes goto to enter one too many
contexts when jumping between if and elsif blocks
p4raw-id: //depot/perl@3692
Diffstat (limited to 't/op/goto.t')
-rwxr-xr-x | t/op/goto.t | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/t/op/goto.t b/t/op/goto.t index 8096aff0f2..7a5de5fea5 100755 --- a/t/op/goto.t +++ b/t/op/goto.t @@ -2,7 +2,7 @@ # "This IS structured code. It's just randomly structured." -print "1..13\n"; +print "1..16\n"; while ($?) { $foo = 1; @@ -55,6 +55,27 @@ exit; FINALE: print "ok 13\n"; + +# does goto LABEL handle block contexts correctly? + +my $cond = 1; +for (1) { + if ($cond == 1) { + $cond = 0; + goto OTHER; + } + elsif ($cond == 0) { + OTHER: + $cond = 2; + print "ok 14\n"; + goto THIRD; + } + else { + THIRD: + print "ok 15\n"; + } +} +print "ok 16\n"; exit; bypass: |