summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-compiler
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-09-25 20:44:04 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-09-25 20:44:04 +0900
commite98823f1896d875b11d0e165d0e8cf9e478a8709 (patch)
tree4d6b55540ac25fa8dc90ae6b1ad2ba364fd136c0 /mrbgems/mruby-compiler
parente01d35ef79f95777f3846c46c4c3f1a311ec66c6 (diff)
downloadmruby-e98823f1896d875b11d0e165d0e8cf9e478a8709.tar.gz
mruby-e98823f1896d875b11d0e165d0e8cf9e478a8709.zip
The `lex_state` after literals should be `EXPR_ENDARG`.
Diffstat (limited to 'mrbgems/mruby-compiler')
-rw-r--r--mrbgems/mruby-compiler/core/parse.y8
1 files changed, 4 insertions, 4 deletions
diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y
index 5daae941c..86b38f0c4 100644
--- a/mrbgems/mruby-compiler/core/parse.y
+++ b/mrbgems/mruby-compiler/core/parse.y
@@ -2853,6 +2853,7 @@ words : tWORDS_BEG tSTRING
symbol : basic_symbol
{
+ p->lstate = EXPR_ENDARG;
$$ = new_sym(p, $1);
}
| tSYMBEG tSTRING_BEG string_rep tSTRING
@@ -2864,7 +2865,6 @@ symbol : basic_symbol
basic_symbol : tSYMBEG sym
{
- p->lstate = EXPR_END;
$$ = $2;
}
;
@@ -4125,7 +4125,7 @@ parse_string(parser_state *p)
}
tokfix(p);
- p->lstate = EXPR_END;
+ p->lstate = EXPR_ENDARG;
end_strterm(p);
if (type & STR_FUNC_XQUOTE) {
@@ -4612,7 +4612,7 @@ parser_yylex(parser_state *p)
}
tokfix(p);
pylval.nd = new_str(p, tok(p), toklen(p));
- p->lstate = EXPR_END;
+ p->lstate = EXPR_ENDARG;
return tCHAR;
case '&':
@@ -4761,7 +4761,7 @@ parser_yylex(parser_state *p)
int is_float, seen_point, seen_e, nondigit;
is_float = seen_point = seen_e = nondigit = 0;
- p->lstate = EXPR_END;
+ p->lstate = EXPR_ENDARG;
newtok(p);
if (c == '-' || c == '+') {
tokadd(p, c);