[Mono-bugs] [Bug 76629][Maj] Changed - "newslot virtual final" should be treated equal to non-virtual

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Fri Jun 30 13:42:04 EDT 2006


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by kornelpal at gmail.com.

http://bugzilla.ximian.com/show_bug.cgi?id=76629

--- shadow/76629	2006-05-04 14:46:53.000000000 -0400
+++ shadow/76629.tmp.20930	2006-06-30 13:42:04.000000000 -0400
@@ -1,13 +1,13 @@
 Bug#: 76629
 Product: Mono: Compilers
 Version: unspecified
 OS: All
 OS Details: 
-Status: RESOLVED   
-Resolution: FIXED
+Status: REOPENED   
+Resolution: 
 Severity: Unknown
 Priority: Major
 Component: C#
 AssignedTo: miguel at ximian.com                            
 ReportedBy: kornelpal at hotmail.com               
 QAContact: mono-bugs at ximian.com
@@ -78,6 +78,31 @@
 different behavior on Mono and on MS.NET because of this bug while 
 assemblies compiled with MS csc.exe have the same behavior on both 
 runtimes.
 
 ------- Additional Comments From marek.safar at seznam.cz  2006-05-04 14:46 -------
 Fixed during development.
+
+------- Additional Comments From kornelpal at gmail.com  2006-06-30 13:42 -------
+This is not fixed.
+
+Main method should be:
+newobj instance void NewslotVirtualFinal.NewslotVirtualFinal::.ctor()
+call instance void 
+NewslotVirtualFinal.NewslotVirtualFinal::SomeMethod()
+newobj instance void NewslotVirtualFinal.NewslotVirtualFinal::.ctor()
+callvirt instance void 
+NewslotVirtualFinal.NewslotVirtualFinal::SomeMethod2()
+ret
+
+But it is:
+newobj instance void NewslotVirtualFinal.NewslotVirtualFinal::.ctor()
+callvirt instance void 
+NewslotVirtualFinal.NewslotVirtualFinal::SomeMethod()
+newobj instance void NewslotVirtualFinal.NewslotVirtualFinal::.ctor()
+callvirt instance void 
+NewslotVirtualFinal.NewslotVirtualFinal::SomeMethod2()
+ret
+
+"newslot virtual final" methods should be called using "call" rather 
+than "callvirt". This makes impicit and explicit interface method 
+implementation compatible when they are non-virtual.


More information about the mono-bugs mailing list