summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-09-06 04:25:53 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-09-06 04:25:53 +0000
commit301c9f1265ee471a5697623d3bb928cb73544057 (patch)
treeb141858808867a25c2f841f77dd8557a8442d420 /parse.y
parent103f6728df2607a5e8b785d429c0e9cac42c19e5 (diff)
* parse.y (symbols_i): need to initialize early-created symbols.
[ruby-dev:29496] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y3
1 files changed, 3 insertions, 0 deletions
diff --git a/parse.y b/parse.y
index 6637bba246..a9ad0673de 100644
--- a/parse.y
+++ b/parse.y
@@ -8532,6 +8532,9 @@ rb_id2name(ID id)
static int
symbols_i(VALUE sym, ID value, VALUE ary)
{
+ if (!RBASIC(sym)->klass) {
+ RBASIC(sym)->klass = rb_cSymbol;
+ }
rb_ary_push(ary, sym);
return ST_CONTINUE;
}