[Mono-bugs] [Bug 33285][Nor] Changed - DataAdapter implementations
bugzilla-daemon@rocky.ximian.com
bugzilla-daemon@rocky.ximian.com
7 Nov 2002 00:42:32 -0000
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 miguel@ximian.com.
http://bugzilla.ximian.com/show_bug.cgi?id=33285
--- shadow/33285 Wed Nov 6 05:29:40 2002
+++ shadow/33285.tmp.26604 Wed Nov 6 19:42:32 2002
@@ -1,16 +1,16 @@
Bug#: 33285
-Product: Mono/MCS
+Product: Mono/Runtime
Version: unspecified
OS: unknown
OS Details:
Status: ASSIGNED
Resolution:
Severity: Unknown
Priority: Normal
-Component: Misc
+Component: misc
AssignedTo: mono-bugs@ximian.com
ReportedBy: carlosga@telefonica.net
QAContact: mono-bugs@ximian.com
TargetMilestone: ---
URL:
Cc:
@@ -109,6 +109,67 @@
* Compilation failed: 1 error(s), 0 warnings
*/
}
}
+
+------- Additional Comments From miguel@ximian.com 2002-11-06 19:42 -------
+Ok, I have fixed the bug in the compiler (this is in fact an
+interesting setup). The problem is that the Mono Runtime is not
+currently able to generate the code for it, here is the output:
+
+no implementation for interface method
+TestCase.IDataAdapter::get_TableMappings() in class TestCase.XDataAdapter
+METHOD .ctor()
+
+** ERROR **: file class.c: line 687 (mono_class_setup_vtable): should
+not be reached
+aborting...
+Aborted
+
+Here is the updated sample which compiles and runs on .NET with CSC
+and MCS:
+
+using System;
+namespace TestCase
+{
+ public interface IDataAdapter
+ {
+ string TableMappings {get;}
+ }
+ public interface IDbDataAdapter : IDataAdapter
+ {
+ }
+ public class DataAdapter : IDataAdapter
+ {
+ string IDataAdapter.TableMappings
+ {
+ get{return "hello idataadapter.tablemappings";}
+ }
+ public string TableMappings
+ {
+ get{return "hello Dataadapter.tablemappings";}
+ }
+ }
+
+ public class DbDataAdapter : DataAdapter
+ {
+ }
+
+ public class XDataAdapter : DbDataAdapter, IDbDataAdapter
+ {
+ }
+
+class X {
+ static void Main ()
+ {
+ XDataAdapter d = new XDataAdapter ();
+ IDataAdapter i = d;
+
+ Console.WriteLine ("ID=" + i.TableMappings);
+ Console.WriteLine ("DA=" + d.TableMappings);
+ }
+}
+}
+
+I am re-assigning this to the Mono/Runtime now.