diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2019-03-12 04:11:41 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2019-03-12 04:11:41 +0000 |
commit | e5d10cda07b23682e5e4e64d1324e4d3247d4785 (patch) | |
tree | a853f180d6209904f67ebdea15bc6cea52aeed82 /parse.y | |
parent | a3a1199f413f7a96c4c90c7513c832838379e468 (diff) | |
download | ruby-e5d10cda07b23682e5e4e64d1324e4d3247d4785.tar.gz |
Flush erred token
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -4676,6 +4676,7 @@ parser_yyerror(struct parser_params *p, const YYLTYPE *yylloc, const char *msg) if (!yylloc) { RUBY_SET_YYLLOC(current); yylloc = ¤t; + token_flush(p); } else if ((p->ruby_sourceline != yylloc->beg_pos.lineno && p->ruby_sourceline != yylloc->end_pos.lineno) || @@ -4765,6 +4766,7 @@ parser_yyerror(struct parser_params *p, const YYLTYPE *yylloc, const char *msg) #else dispatch1(parse_error, STR_NEW2(msg)); ripper_error(p); + token_flush(p); #endif /* !RIPPER */ return 0; } @@ -11195,6 +11197,7 @@ parser_compile_error(struct parser_params *p, const char *fmt, ...) rb_long2int(p->lex.pcur - p->lex.pbeg), p->enc, fmt, ap); va_end(ap); + token_flush(p); } static size_t |