Issue #11385 has been reported by Allen Wang.

----------------------------------------
Bug #11385: `==` with bidirectional/cyclic dependency
https://bugs.ruby-lang.org/issues/11385

* Author: Allen Wang
* Status: Open
* Priority: Normal
* Assignee: ruby-core
* ruby -v: 2.2.1
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
`class Something
  attr_accessor :friend
  def initialize(friend)
    self.friend = friend
  end

  def ==(other)
    friend == other.friend
  end
end


a = Something.new([])
b = Something.new([a])
a.friend = [b]

a == b`

The above code returns true on OS X and Linux, by right it should give me a exception of stack level too deep.

( And on windows I can see the expected excetpion )

---Files--------------------------------
test.rb (226 Bytes)


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