summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-06-23 10:30:12 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>1998-06-23 10:30:12 +0000
commit6a3c97169c8a671f5feda7eba2b2a7529252daf3 (patch)
tree299c92f68d6acda64e18e3e43ceda8db1d59ff61 /parse.y
parent6b15412c77fc82ceacb156e4595571dd7262ab5d (diff)
*** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y11
1 files changed, 10 insertions, 1 deletions
diff --git a/parse.y b/parse.y
index 8b1376659e..de14f4f6ea 100644
--- a/parse.y
+++ b/parse.y
@@ -441,7 +441,6 @@ mlhs : mlhs_head
{
$$ = $2;
}
-
| mlhs_head tSTAR lhs
{
$$ = NEW_MASGN(NEW_LIST($1), $3);
@@ -2470,6 +2469,11 @@ retry:
case '&':
if ((c = nextc()) == '&') {
lex_state = EXPR_BEG;
+ if ((c = nextc()) == '=') {
+ yylval.id = tANDOP;
+ return tOP_ASGN;
+ }
+ pushback(c);
return tANDOP;
}
else if (c == '=') {
@@ -2493,6 +2497,11 @@ retry:
case '|':
lex_state = EXPR_BEG;
if ((c = nextc()) == '|') {
+ if ((c = nextc()) == '=') {
+ yylval.id = tOROP;
+ return tOP_ASGN;
+ }
+ pushback(c);
return tOROP;
}
else if (c == '=') {