summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-06-22 10:57:40 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-06-22 10:57:40 +0000
commit2926a585ffba2029ea8b2be6b25a2f13b743a1be (patch)
treed1def29916191135e82955269e709bccd6107596
parent4349da9c1be4f9584c156a1bff8a51b59e3a65f5 (diff)
* parse.y (shadowing_lvar_gen): should add lvar to vars and
used. [ruby-dev:41666] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--parse.y4
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index f0cc8d5c2e..72818c93a1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Jun 22 19:57:33 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * parse.y (shadowing_lvar_gen): should add lvar to vars and
+ used. [ruby-dev:41666]
+
Tue Jun 22 13:23:13 2010 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/delegate.rb: Forward #trust, #untrust, #taint and #untaint
diff --git a/parse.y b/parse.y
index 9969092e18..b9f59d4a9c 100644
--- a/parse.y
+++ b/parse.y
@@ -8236,6 +8236,10 @@ shadowing_lvar_gen(struct parser_params *parser, ID name)
}
else if (dvar_defined(name) || local_id(name)) {
rb_warningS("shadowing outer local variable - %s", rb_id2name(name));
+ vtable_add(lvtbl->vars, name);
+ if (lvtbl->used) {
+ vtable_add(lvtbl->used, name);
+ }
}
}
else {