mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* include/ruby/ruby.h: freeze nil/true/false.
* gc.c (should_be_finalizable): check frozen after checkin FL_ABLE. * object.c (rb_obj_taint): check OBJ_TAINTABLE(obj). * object.c (rb_obj_freeze): remove immediate_frozen_tbl because all of immediate values are frozen. YAY! * object.c (rb_obj_frozen_p): ditto. * test/ruby/test_eval.rb: skip instance_variable_set for frozen objects. * test/ruby/test_weakmap.rb: check ArgumentError instead of RuntimeError. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
d2d4017d80
commit
cc3088ea51
6 changed files with 34 additions and 24 deletions
|
@ -19,13 +19,13 @@ class TestWeakMap < Test::Unit::TestCase
|
|||
assert_raise(ArgumentError) {@wm[true] = x}
|
||||
assert_raise(ArgumentError) {@wm[false] = x}
|
||||
assert_raise(ArgumentError) {@wm[nil] = x}
|
||||
assert_raise(RuntimeError) {@wm[42] = x}
|
||||
assert_raise(RuntimeError) {@wm[:foo] = x}
|
||||
assert_raise(ArgumentError) {@wm[42] = x}
|
||||
assert_raise(ArgumentError) {@wm[:foo] = x}
|
||||
assert_raise(ArgumentError) {@wm[x] = true}
|
||||
assert_raise(ArgumentError) {@wm[x] = false}
|
||||
assert_raise(ArgumentError) {@wm[x] = nil}
|
||||
assert_raise(RuntimeError) {@wm[x] = 42}
|
||||
assert_raise(RuntimeError) {@wm[x] = :foo}
|
||||
assert_raise(ArgumentError) {@wm[x] = 42}
|
||||
assert_raise(ArgumentError) {@wm[x] = :foo}
|
||||
end
|
||||
|
||||
def test_include?
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue