[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/

In This Thread

Prev Next