From: SASADA Koichi Date: 2012-10-27T10:02:08+09:00 Subject: [ruby-dev:46291] Re: [ruby-trunk - Feature #6936] Forbid singleton class and instance variabls for float (2012/10/27 9:05), SASADA Koichi wrote: > (2012/10/27 8:38), matz (Yukihiro Matsumoto) wrote: >> Assignee changed from matz (Yukihiro Matsumoto) to ko1 (Koichi Sasada) >> >> OK, I'd like to see if everything goes well. Merge it. とりあえずの速報ですが, test-all では下記のエラー: > # Running tests: > > [ 846/11367] PPTestModule::PPInspectTest#test_to_s_with_iv = 0.00 s > 1) Error: > test_to_s_with_iv(PPTestModule::PPInspectTest): > RuntimeError: can't modify frozen Float > /mnt/sdb1/ruby/trunk/test/test_pp.rb:111:in `block in test_to_s_with_iv' > /mnt/sdb1/ruby/trunk/test/test_pp.rb:111:in `instance_eval' > /mnt/sdb1/ruby/trunk/test/test_pp.rb:111:in `test_to_s_with_iv' > > [ 2709/11367] TestClass#test_singleton_class = 0.00 s > 2) Failure: > test_singleton_class(TestClass) [/mnt/sdb1/ruby/trunk/test/ruby/test_class.rb:195]: > Exception raised: > <#>. > > [ 4022/11367] TestFloat#test_singleton_method = 0.00 s > 3) Failure: > test_singleton_method(TestFloat) [/mnt/sdb1/ruby/trunk/test/ruby/test_float.rb:608]: > [TypeError] exception expected, not > Class: > Message: <"can't modify frozen Float"> > ---Backtrace--- > /mnt/sdb1/ruby/trunk/test/ruby/test_float.rb:608:in `block in test_singleton_method' > --------------- > > [ 6113/11367] TestMarshal#test_float_extend = 0.00 s > 4) Error: > test_float_extend(TestMarshal): > TypeError: can't define singleton > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:224:in `extend_object' > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:224:in `extend' > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:224:in `test_float_extend' > > [ 6115/11367] TestMarshal#test_float_ivar = 0.00 s > 5) Error: > test_float_ivar(TestMarshal): > RuntimeError: can't modify frozen Float > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:212:in `block in test_float_ivar' > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:212:in `instance_eval' > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:212:in `test_float_ivar' > > [ 6116/11367] TestMarshal#test_float_ivar_self = 0.00 s > 6) Error: > test_float_ivar_self(TestMarshal): > RuntimeError: can't modify frozen Float > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:218:in `block in test_float_ivar_self' > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:218:in `instance_eval' > /mnt/sdb1/ruby/trunk/test/ruby/marshaltestlib.rb:218:in `test_float_ivar_self' > > Finished tests in 563.933874s, 20.1566 tests/s, 6086.8360 assertions/s. > 11367 tests, 3432573 assertions, 2 failures, 4 errors, 29 skips test-ruby spec のほうでは 1) String#% taints result for %s when argument is tainted ERROR RuntimeError: can't modify frozen Float /mnt/sdb1/ruby/trunk/spec/ruby spec/core/string/modulo_spec.rb:654:in `taint' /mnt/sdb1/ruby/trunk/spec/ruby spec/core/string/modulo_spec.rb:654:in `block (2 levels) in ' /mnt/sdb1/ruby/trunk/spec/ruby spec/core/string/modulo_spec.rb:4:in `' というエラーが出ました. とりあえず,テストを直せば良さそうだなぁと思っています. -- // SASADA Koichi at atdot dot net