mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* parse.y (parser_yylex): seems like a symbol-literal when spaces
are unbalanced. [ruby-core:29578] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
cfab29b7db
commit
e70a308c75
3 changed files with 10 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
Sun Apr 18 12:48:51 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* parse.y (parser_yylex): seems like a symbol-literal when spaces
|
||||
are unbalanced. [ruby-core:29578]
|
||||
|
||||
Sun Apr 18 12:32:03 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* parse.y (string_content): preserve cond_stack and cmdarg_stack.
|
||||
|
|
|
@ -890,3 +890,6 @@ assert_valid_syntax('x y { "#{}".z { } }', bug1240)
|
|||
assert_valid_syntax('x y { "#{}".z do end }', bug1240)
|
||||
|
||||
assert_valid_syntax('y "#{a 1}" do end', '[ruby-core:29579]')
|
||||
|
||||
bug3163 = '[ruby-core:29578]'
|
||||
assert_valid_syntax('foo = 1; foo :bar', bug3163)
|
||||
|
|
3
parse.y
3
parse.y
|
@ -7192,7 +7192,8 @@ parser_yylex(struct parser_params *parser)
|
|||
lex_state = EXPR_DOT;
|
||||
return tCOLON2;
|
||||
}
|
||||
if (lex_state == EXPR_END || lex_state == EXPR_ENDARG || (c != -1 && ISSPACE(c))) {
|
||||
if ((!space_seen && (lex_state == EXPR_END || lex_state == EXPR_ENDARG)) ||
|
||||
(c != -1 && ISSPACE(c))) {
|
||||
pushback(c);
|
||||
lex_state = EXPR_BEG;
|
||||
return ':';
|
||||
|
|
Loading…
Add table
Reference in a new issue