Issue #4136 has been updated by Marc-Andre Lafortune. Category set to core This changes the behavior for subclasses of Array. Should the other cases also be modified in the same way? If I check the list I had in my blog (see the quiz at bottom of http://blog.marc-andre.ca/2009/05/schizo-ruby-puzzle.html ), the following (at least) are remaining: Sub = Class.new(Array) x = Sub.new (x * 2).class # => Sub x.flatten.class # => Sub x[0...0].class # => Sub ---------------------------------------- http://redmine.ruby-lang.org/issues/show/4136 ---------------------------------------- http://redmine.ruby-lang.org