summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNobuyoshi Nakada <[email protected]>2017-10-09 08:56:46 +0900
committerNobuyoshi Nakada <[email protected]>2017-10-09 08:56:46 +0900
commit82983330a3770dd44f6b9cadea3ef2def16cce19 (patch)
treeb81700e38b0a79abf6a69ed5a62fbba6c7132d52
parent1c2a2827b3db4468f2beda0a1dac8cecf0075f2b (diff)
downloadmruby-82983330a3770dd44f6b9cadea3ef2def16cce19.tar.gz
mruby-82983330a3770dd44f6b9cadea3ef2def16cce19.zip
Fix parse error on TRICK2013/yhara
-rw-r--r--mrbgems/mruby-compiler/core/parse.y5
1 files changed, 3 insertions, 2 deletions
diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y
index 0cebeeb49..82e4c7bdd 100644
--- a/mrbgems/mruby-compiler/core/parse.y
+++ b/mrbgems/mruby-compiler/core/parse.y
@@ -5078,6 +5078,9 @@ parser_yylex(parser_state *p)
else if (IS_SPCARG(-1)) {
c = tLPAREN_ARG;
}
+ else if (p->lstate == EXPR_END && space_seen) {
+ c = tLPAREN_ARG;
+ }
p->paren_nest++;
COND_PUSH(0);
CMDARG_PUSH(0);
@@ -5497,11 +5500,9 @@ parser_yylex(parser_state *p)
mrb_sym ident = intern_cstr(tok(p));
pylval.id = ident;
-#if 0
if (last_state != EXPR_DOT && islower(tok(p)[0]) && local_var_p(p, ident)) {
p->lstate = EXPR_END;
}
-#endif
}
return result;
}