summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authornagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-08-05 07:00:33 +0000
committernagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-08-05 07:00:33 +0000
commit5013a509cdf8633e908648680f5104ec544ead4c (patch)
tree80a2938555ea966c7c79894650eb74816482dec0 /test
parent23390a82e606ac53a3f9567c98405b19df713feb (diff)
merge revision(s) 59457: [Backport #13775]
should not copy promoted flags. * include/ruby/ruby.h (rb_clone_setup): should not copy some flags (FL_PROMOTED0|FL_PROMOTED1|FL_FINALIZE). [Bug #13775] * test/ruby/test_object.rb: add a test (note that this test will fail only when RGENGC_CHECK_MODE >= 2). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_4@59520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r--test/ruby/test_object.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/ruby/test_object.rb b/test/ruby/test_object.rb
index 7c1b98f76e..5ef1497869 100644
--- a/test/ruby/test_object.rb
+++ b/test/ruby/test_object.rb
@@ -920,4 +920,14 @@ class TestObject < Test::Unit::TestCase
num.times {a.clone.set}
end;
end
+
+ def test_clone_object_should_not_be_old
+ assert_normal_exit <<-EOS, '[Bug #13775]'
+ b = proc { }
+ 10.times do |i|
+ b.clone
+ GC.start
+ end
+ EOS
+ end
end