From: kazuki@... Date: 2016-09-08T08:51:25+00:00 Subject: [ruby-dev:49781] [Ruby trunk Bug#12738] Array#flattenで特異クラスが引き継がれる Issue #12738 has been reported by Kazuki Tsujimoto. ---------------------------------------- Bug #12738: Array#flattenで特異クラスが引き継がれる https://bugs.ruby-lang.org/issues/12738 * Author: Kazuki Tsujimoto * Status: Open * 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: REQUIRED ---------------------------------------- Array#flattenで生成されたオブジェクトがflattenのレシーバと特異クラスを共有してしまっています。 ~~~ruby a = [] class << a def m; :m; end end p a.flatten.m #=> :m ~~~ -- https://bugs.ruby-lang.org/