summaryrefslogtreecommitdiff
path: root/perly.y
diff options
context:
space:
mode:
Diffstat (limited to 'perly.y')
-rw-r--r--perly.y8
1 files changed, 6 insertions, 2 deletions
diff --git a/perly.y b/perly.y
index 839575d8c7..ece2904e6c 100644
--- a/perly.y
+++ b/perly.y
@@ -194,7 +194,8 @@ formblock: '=' remember ';' FORMRBRACK formstmtseq ';' '.'
;
remember: /* NULL */ /* start a full lexical scope */
- { $$ = block_start(TRUE); }
+ { $$ = block_start(TRUE);
+ parser->parsed_sub = 0; }
;
mblock : '{' mremember stmtseq '}'
@@ -205,7 +206,8 @@ mblock : '{' mremember stmtseq '}'
;
mremember: /* NULL */ /* start a partial lexical scope */
- { $$ = block_start(FALSE); }
+ { $$ = block_start(FALSE);
+ parser->parsed_sub = 0; }
;
/* A sequence of statements in the program */
@@ -293,6 +295,7 @@ barestmt: PLUGSTMT
;
$$ = (OP*)NULL;
intro_my();
+ parser->parsed_sub = 1;
}
| PACKAGE WORD WORD ';'
{
@@ -307,6 +310,7 @@ barestmt: PLUGSTMT
{
SvREFCNT_inc_simple_void(PL_compcv);
utilize($1, $2, $4, $5, $6);
+ parser->parsed_sub = 1;
$$ = (OP*)NULL;
}
| IF '(' remember mexpr ')' mblock else