summaryrefslogtreecommitdiff
path: root/perly.y
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1999-10-07 22:57:52 +0000
committerGurusamy Sarathy <gsar@cpan.org>1999-10-07 22:57:52 +0000
commit38a230cb455fb1aca316039ba1d4aed58c0c60d5 (patch)
tree867dcdec0469ba7ff2832d2d367f0d22bda7c1c7 /perly.y
parent2e20e14f06deb037c08540fe454d89e37322092d (diff)
downloadperl-38a230cb455fb1aca316039ba1d4aed58c0c60d5.tar.gz
change#3728 was flawed (loop contexts saw the wrong statement
info, causing loop control constructs to not find the label); disable OP_SETSTATE entirely and add a fix that is specifically targetted at disabling the OP_LINESEQ optimization in else BLOCK, which was what the original patch was supposed to fix TODO: remove the remainder of the setstate logic if it can't be used anywhere else (it isn't used anywhere now) p4raw-link: @3728 on //depot/perl: 7399586d384137f7ae66bcc82a83b0df7dd429e5 p4raw-id: //depot/perl@4309
Diffstat (limited to 'perly.y')
-rw-r--r--perly.y2
1 files changed, 1 insertions, 1 deletions
diff --git a/perly.y b/perly.y
index ddc0efcb6d..c8163e135e 100644
--- a/perly.y
+++ b/perly.y
@@ -200,7 +200,7 @@ sideff : error
else : /* NULL */
{ $$ = Nullop; }
| ELSE mblock
- { $$ = scope($2); }
+ { ($2)->op_flags |= OPf_PARENS; $$ = scope($2); }
| ELSIF '(' mexpr ')' mblock else
{ PL_copline = $1;
$$ = newCONDOP(0, $3, scope($5), $6);