[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU]ECMA doubt .. function overloading
From: |
Gopal V |
Subject: |
Re: [DotGNU]ECMA doubt .. function overloading |
Date: |
Sat, 9 Nov 2002 00:33:47 +0530 |
User-agent: |
Mutt/1.2.5i |
If memory serves me right, Adam Treat wrote:
> ************ And here is the ildasm for child.cs compiled with mcs:
> ldc.i4.s 42
> conv.r4
> callvirt instance void Child::Foo(float32 x)
> ret
Why the heck does it generate a callvirt on a non-virtual function ?..
Typically that would not allow me to do this ...
Child a=null;
a.Foo(42);
Which should not throw a NullRef exception ... as long as Foo() does not
try to use 'ldarg.0'... (MCS stuff does throw a NullRef ?)
// If we're going one level higher in the class hierarchy,
abort if
// we already found an applicable method.
seems to sum up the MCS implementation. But "applicable" ain't "best" :-)
But yeah, we should be talking about cscc bugs :-) ... and as usual
we can do a "inherit=0" lookups...
But do we want to ?.. (Rhys ?)
Gopal
--
The difference between insanity and genius is measured by success