[Mono-bugs] [Bug 76637][Nor] Changed - needs special support for
[ComImport] attribute (blocks IronPython 0.9.4 from compiling)
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Mon Nov 7 07:14:15 EST 2005
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 vargaz at gmail.com.
http://bugzilla.ximian.com/show_bug.cgi?id=76637
--- shadow/76637 2005-11-06 03:41:43.000000000 -0500
+++ shadow/76637.tmp.19148 2005-11-07 07:14:15.000000000 -0500
@@ -1,23 +1,23 @@
Bug#: 76637
-Product: Mono: Class Libraries
+Product: Mono: Compilers
Version: unspecified
OS: other
OS Details:
Status: NEW
Resolution:
-Severity:
-Priority: Wishlist
-Component: System
+Severity: Unknown
+Priority: Normal
+Component: C#
AssignedTo: mono-bugs at ximian.com
ReportedBy: hys545 at dreamwiz.com
QAContact: mono-bugs at ximian.com
TargetMilestone: ---
URL:
Cc:
-Summary: mono(svn- 52612)don't compile ironpython-0.9.4
+Summary: needs special support for [ComImport] attribute (blocks IronPython 0.9.4 from compiling)
Please fill in this template when reporting a bug, unless you know what
you are doing.
Description of Problem:
hys545 at localhost IronPython-0.9.4]$ make
gmcs -t:library -r:bin/IronMath.dll -out:bin/IronPython.dll -recurse:
@@ -50,6 +50,41 @@
How often does this happen?
Additional Information:
+
+------- Additional Comments From vargaz at gmail.com 2005-11-07 07:14 -------
+Most of these are now fixed, the last remaining problem is an mcs
+bug/missing feature:
+
+Given this code:
+
+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+using System;
+using System.Runtime.InteropServices;
+
+ [ComImport, GuidAttribute("E5CB7A31-7512-11D2-89CE-0080C792E5D8")]
+ public class CorMetaDataDispenserExClass { }
+
+ [ComImport, GuidAttribute("31BCFCE2-DAFB-11D2-9F81-00C04F79A0A3"),
+CoClass(typeof(CorMetaDataDispenserExClass))]
+ public interface MetaDataDispenserEx { }
+
+public class Test {
+
+ public static void Main () {
+ Object o = new MetaDataDispenserEx ();
+ }
+}
+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+csc accepts the 'new' statement, even through it names an interface,
+if the interface is decorated with [ComImport]. It generates code
+like this:
+
+ IL_0000: nop
+ IL_0001: newobj instance void CorMetaDataDispenserExClass::.ctor()
+ IL_0006: castclass MetaDataDispenserEx
+ IL_000b: stloc.0
+ IL_000c: ret
More information about the mono-bugs
mailing list