[Mono-bugs] [Bug 49023][Nor] New - invalid IL generated for System.Xml.XmlSchemaImporter::ImportExtensionTypes

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Thu, 8 Jan 2004 00:09:15 -0500 (EST)


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 bmaurer@users.sf.net.

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

--- shadow/49023	2004-01-08 00:09:15.000000000 -0500
+++ shadow/49023.tmp.18337	2004-01-08 00:09:15.000000000 -0500
@@ -0,0 +1,55 @@
+Bug#: 49023
+Product: Mono/Compilers
+Version: unspecified
+OS: unknown
+OS Details: 
+Status: RESOLVED   
+Resolution: FIXED
+Severity: Unknown
+Priority: Normal
+Component: C#
+AssignedTo: bmaurer@users.sf.net                            
+ReportedBy: vargaz@freemail.hu               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: invalid IL generated for System.Xml.XmlSchemaImporter::ImportExtensionTypes
+
+The IL code generated for the ImportExtensionTypes method in 
+System.Xml.XmlSchemaImporter is invalid:
+
+          IL_0041: callvirt instance object class
+[corlib]System.Collections.IEnumerator::get_Current()
+          IL_0046: stloc.1
+
+The generated code is missing a cast from object to to XmlSchemaObject.
+
+------- Additional Comments From miguel@ximian.com  2003-10-07 02:11 -------
+The compiler determines that the result type is compatible:
+
+          IL_0027:  callvirt instance class
+System.Xml.Schema.XmlSchemaObjectCollection class
+System.Xml.Schema.XmlSchema::get_Items()
+          IL_002c:  callvirt instance class
+System.Xml.Schema.XmlSchemaObjectEnumerator class
+System.Xml.Schema.XmlSchemaObjectCollection::GetEnumerator()
+
+So what happens is that the GetEnumerator in XmlSchemaObjectCollection
+will return a strongly typed enumerator that returns a
+System.Xml.Schema.XmlSchemaObject.  
+
+Maybe the compiler bug (need to check that tomorrow) is that it calls
+the generic IEnumerator.Current method, and it probably could call the
+XmlSchemaObjectEnumerator.Current method. 
+
+------- Additional Comments From bmaurer@users.sf.net  2003-12-15 13:23 -------
+Miguel,
+
+I think you fixed the bug that makes it call the iface method. I will 
+see if this fixes the bug.
+
+Assigning to self to keep this on my radar
+
+------- Additional Comments From bmaurer@users.sf.net  2004-01-08 00:09 -------
+Ok, can confirm this has been fixed.