summaryrefslogtreecommitdiff
path: root/op_reg_common.h
diff options
context:
space:
mode:
authorZefram <zefram@fysh.org>2010-10-14 01:52:59 +0100
committerFather Chrysostomos <sprout@cpan.org>2010-10-21 05:53:25 -0700
commita7aaec61655ef1580eb319cf234db0f3d5c9981e (patch)
tree5897e4d98914cd94069fa936eb35f577d8d61c6e /op_reg_common.h
parent640d5d412e67683edc19515df4462d7bb4739ae2 (diff)
downloadperl-a7aaec61655ef1580eb319cf234db0f3d5c9981e.tar.gz
handle bracket stack better in recdescent parsing
When recursing into the parser for recursive-descent parsing, put a special entry on the bracket stack that generates a fake EOF if a closing bracket belonging to an outer parser frame is seen. This keeps the bracket stack balanced across a parse_stmtseq() frame, fixing [perl #78222]. If a recursive-descent parser frame ends by yyunlex()ing an opening bracket, pop its entry off the bracket stack and stash it in the forced-token queue, to be revived when the token is re-lexed. This keeps the bracket stack balanced across a parse_fullstmt() frame.
Diffstat (limited to 'op_reg_common.h')
0 files changed, 0 insertions, 0 deletions