diff options
| author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-12-27 03:57:21 +0000 |
|---|---|---|
| committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-12-27 03:57:21 +0000 |
| commit | 45c6913042489b0aeb3ce6a38bb5e6e245e20807 (patch) | |
| tree | 08400ea71783592d249227c384eeb28e85801bef /test/stringio | |
| parent | 3a67d33091fee43747ead2b7aa157337a05700bb (diff) | |
| download | ruby-45c6913042489b0aeb3ce6a38bb5e6e245e20807.tar.gz ruby-45c6913042489b0aeb3ce6a38bb5e6e245e20807.tar.xz ruby-45c6913042489b0aeb3ce6a38bb5e6e245e20807.zip | |
* vm_insnhelper.c (vm_call_method, vm_call_cfunc): use original id instead of
calling id when NODE_CFUNC or NODE_BMETHOD.
fixes Bug #632 [ruby-core:19282].
* vm_eval.c (vm_call0, vm_call_super): ditto.
* vm_method.c (rb_add_method, rb_alias): store original id
in nd_file field of NODE_METHOD.
* test/stringio/test_stringio.rb: add a test.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@21084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/stringio')
| -rw-r--r-- | test/stringio/test_stringio.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/test/stringio/test_stringio.rb b/test/stringio/test_stringio.rb index 8f0dc8702..98cf84e00 100644 --- a/test/stringio/test_stringio.rb +++ b/test/stringio/test_stringio.rb @@ -379,4 +379,19 @@ class TestStringIO < Test::Unit::TestCase assert_equal(4, f.size) end + # This test is should in ruby/test_method.rb + # However this test depends on stringio library, + # we write it here. + class C < StringIO + alias old_init initialize + attr_reader :foo + def initialize + @foo = :ok + old_init + end + end + + def test_method + assert_equal(:ok, C.new.foo, 'Bug #632 [ruby-core:19282]') + end end |
