diff options
author | ktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-07-02 10:38:38 +0000 |
---|---|---|
committer | ktsj <ktsj@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-07-02 10:38:38 +0000 |
commit | 0ff27c4604c76382767b929818d0c428aa74e9f1 (patch) | |
tree | 619642af89d89705218358801cc14f3a9cf8d511 /test/ruby/test_symbol.rb | |
parent | b08892c4ae436ae023168a2370f6a4e776968607 (diff) |
Symbol#== should be able to be redefined
* vm.c (vm_init_redefined_flag): set redefinition flag for Symbol#==.
The bug was introduced in r58895.
* test/ruby/test_symbol.rb: test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_symbol.rb')
-rw-r--r-- | test/ruby/test_symbol.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/ruby/test_symbol.rb b/test/ruby/test_symbol.rb index e7f3d5a527..ba3256b820 100644 --- a/test/ruby/test_symbol.rb +++ b/test/ruby/test_symbol.rb @@ -514,4 +514,16 @@ class TestSymbol < Test::Unit::TestCase assert_not_equal sym.to_sym.hash, `#{ruby} -e 'puts #{sym.inspect}.to_sym.hash'`.to_i end + + def test_eq_can_be_redefined + assert_in_out_err([], <<-RUBY, ["foo"], []) + class Symbol + def ==(obj) + "foo" + end + end + + puts :a == :a + RUBY + end end |