diff options
| author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-10-10 08:21:13 +0000 |
|---|---|---|
| committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-10-10 08:21:13 +0000 |
| commit | 8b678bcaa10ae367d9d937458c340996e4a21b8a (patch) | |
| tree | 96377ab531ba1336b6b63a5e2eb6382456312bcb /parse.y | |
| parent | ebae08099424e54ea71c00fe8a9b21d5c9f8fc10 (diff) | |
| download | ruby-8b678bcaa10ae367d9d937458c340996e4a21b8a.tar.gz ruby-8b678bcaa10ae367d9d937458c340996e4a21b8a.tar.xz ruby-8b678bcaa10ae367d9d937458c340996e4a21b8a.zip | |
* file.c (rb_stat_clone): should copy internal data too.
* numeric.c (num_clone): Numeric should not be copied by clone.
* object.c (rb_obj_clone): should check immediate values.
* parse.y (command): `yield' should take command_args.
* parse.y (parse_quotedwords): %w(...) is not a string.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@1782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
| -rw-r--r-- | parse.y | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -208,7 +208,7 @@ static void top_local_setup(); %token <id> tIDENTIFIER tFID tGVAR tIVAR tCONSTANT tCVAR %token <val> tINTEGER tFLOAT tSTRING tXSTRING tREGEXP -%token <node> tDSTRING tDXSTRING tDREGEXP tNTH_REF tBACK_REF +%token <node> tDSTRING tDXSTRING tDREGEXP tNTH_REF tBACK_REF tQWORDS %type <node> singleton string %type <val> literal numeric @@ -510,7 +510,7 @@ command : operation command_args $$ = new_super($2); fixpos($$, $2); } - | kYIELD call_args + | kYIELD command_args { $$ = NEW_YIELD(ret_args($2)); fixpos($$, $2); @@ -1163,6 +1163,7 @@ primary : literal { $$ = NEW_XSTR($1); } + | tQWORDS | tDXSTRING | tDREGEXP | var_ref @@ -2742,7 +2743,7 @@ parse_quotedwords(term, paren) if (!qwords) qwords = NEW_ZARRAY(); yylval.node = qwords; lex_state = EXPR_END; - return tDSTRING; + return tQWORDS; } static int |
