Issue #7045 has been updated by marcandre (Marc-Andre Lafortune).


The issue is that most classes' method `eql?` return false unless the object has the same class

    require 'delegate'
    o = SimpleDelegator.new(42)
    o.eql?(o) # => false
    # because the eql? is delegated, and
    42.eql?(o) # => false

----------------------------------------
Bug #7045: DelegateClass array subtraction
https://bugs.ruby-lang.org/issues/7045#change-29640

Author: benmoss (Ben Moss)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 
ruby -v: ruby 2.0.0dev (2012-09-21) [x86_64-darwin11.4.0]


When I have an array that contains an array that contains a single instance of a class that inherits from DelegateClass, and I subtract from that array another array containing another array containing the same nested object, Ruby does not return an empty array. I've attached a test file that should replicate the one failing scenario, as well as some complimentary scenarios that do work as I had expected.


-- 
http://bugs.ruby-lang.org/