From 11d9983bc340f3cc05da3a87d5d0c63f4f6bd899 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Wed, 21 Oct 2020 14:11:18 +0900 Subject: Make the value shareable deeply --- test/ruby/test_parse.rb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'test/ruby') diff --git a/test/ruby/test_parse.rb b/test/ruby/test_parse.rb index f12b61019b..a9ab4c440c 100644 --- a/test/ruby/test_parse.rb +++ b/test/ruby/test_parse.rb @@ -1181,20 +1181,24 @@ x = __ENCODING__ a = Class.new.class_eval("#{<<~"begin;"}\n#{<<~'end;'}") begin; # shareable_constant_value: true - A = [] + A = [[1]] end; assert_predicate(a, :frozen?) + assert_equal([1], a[0]) + assert_predicate(a[0], :frozen?) a, b = Class.new.class_eval("#{<<~"begin;"}\n#{<<~'end;'}") begin; # shareable_constant_value: false class X # shareable_constant_value: true - A = [] + A = [[1]] end B = [] [X::A, B] end; assert_predicate(a, :frozen?) assert_not_predicate(b, :frozen?) + assert_equal([1], a[0]) + assert_predicate(a[0], :frozen?) end =begin -- cgit v1.2.3