aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--parse.y5
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index e491ea5c1e..c46f1d4ad1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Jan 15 14:17:57 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * parse.y (stmt): explicit error for "Object::Far += foo 1" just
+ as "Object::Far += 1".
+
Thu Jan 15 13:10:58 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (COMPILERFLAG): for enc/trans/gb18030.c.
diff --git a/parse.y b/parse.y
index 42d24f61dc..2074cb6730 100644
--- a/parse.y
+++ b/parse.y
@@ -1100,6 +1100,11 @@ stmt : keyword_alias fitem {lex_state = EXPR_FNAME;} fitem
$$ = dispatch3(opassign, $$, $4, $5);
%*/
}
+ | primary_value tCOLON2 tCONSTANT tOP_ASGN command_call
+ {
+ yyerror("constant re-assignment");
+ $$ = 0;
+ }
| primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_call
{
/*%%%*/