Super(foo) doesn't work correctly when subclassing Ruby classes implemented in C#

I’ve found an odd bug. I think this is Tomas’ territory, but I could be
wrong. I’ve already opened an issue on codeplex (, but I figured I’d mention
here to generate some discussion.

First, here’s a quick repro of the bug:

class File2 < File
def initialize

TypeError: can’t convert String into Fixnum

What’s going on here? Well, it looks like IronRuby has arbitrarily
picked a
constructor overload to use when it finds a call to super. If I instead
“super(1)”, it would work just fine. This same problem seems to plague
RubyClass that was implemented in C# using the IronRuby library APIs.

Could someone give me a sanity check, please? You’ll notice that the
snippet above works just fine on MRI, so I don’t think I’ve lost my
just yet :).


Tomas, have you had a chance to look at this? It looks like we can’t
subclass anything in the standard library (or yaml) in IronRuby.

Just wanted to see if you could confirm. If so, I’d bump up the
priority of
the CodePlex ticket - this is a pretty big incompatibility with MRI.


On Thu, Jul 29, 2010 at 1:03 AM, Charles S. <