summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2001-10-10 08:21:13 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2001-10-10 08:21:13 +0000
commit8098dd6c802db53a0e879efb7e48e75981f043d3 (patch)
tree96377ab531ba1336b6b63a5e2eb6382456312bcb /parse.y
parent14129c8fa30055b25036e490c0b8d87ffcfa34b2 (diff)
* 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: svn+ssh://ci.ruby-lang.org/ruby/trunk@1782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y7
1 files changed, 4 insertions, 3 deletions
diff --git a/parse.y b/parse.y
index e3d0eb8140..d7ed5b5f58 100644
--- a/parse.y
+++ b/parse.y
@@ -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