diff options
author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-12-10 10:06:20 +0000 |
---|---|---|
committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-12-10 10:06:20 +0000 |
commit | e9c20dacbffe6372b6df9627b698bdff1c9642d0 (patch) | |
tree | b380bdb991d8f5e4e67cef76fd92ddfed88c79db /parse.y | |
parent | 82e28c6b959c11603612a044664c11ed57b0ffdc (diff) |
* parse.y (gettable): should freeze __FILE__ string(__LINE__ is Fixnum).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r-- | parse.y | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -4088,13 +4088,13 @@ gettable(id) return NEW_FALSE(); } else if (id == k__FILE__) { - return NEW_STR(rb_str_new2(ruby_sourcefile)); - } - else if (id == k__LINE__) { VALUE f = rb_str_new2(ruby_sourcefile); OBJ_FREEZE(f); return NEW_STR(f); } + else if (id == k__LINE__) { + return NEW_LIT(INT2FIX(ruby_sourceline)); + } else if (is_local_id(id)) { if (dyna_in_block() && rb_dvar_defined(id)) return NEW_DVAR(id); if (local_id(id)) return NEW_LVAR(id); |