[ruby-dev:49817] [Ruby trunk Bug#12738] Array#flattenで特異クラスが引き継がれる
From:
nagachika00@...
Date:
2016-09-25 07:36:10 UTC
List:
ruby-dev #49817
Issue #12738 has been updated by Tomoyuki Chikanaga. Backport changed from 2.1: UNKNOWN, 2.2: REQUIRED, 2.3: REQUIRED to 2.1: UNKNOWN, 2.2: REQUIRED, 2.3: DONE ruby_2_3 r56233 merged revision(s) 56111. ---------------------------------------- Bug #12738: Array#flattenで特異クラスが引き継がれる https://bugs.ruby-lang.org/issues/12738#change-60641 * Author: Kazuki Tsujimoto * Status: Closed * Priority: Normal * Assignee: * ruby -v: ruby 2.4.0dev (2016-09-08 master 56109) [x86_64-linux] * Backport: 2.1: UNKNOWN, 2.2: REQUIRED, 2.3: DONE ---------------------------------------- Array#flattenで生成されたオブジェクトがflattenのレシーバと特異クラスを共有してしまっています。 ~~~ruby a = [] class << a def m; :m; end end p a.flatten.m #=> :m ~~~ -- https://bugs.ruby-lang.org/