[Mono-bugs] [Bug 76173][Nor] New - Managed pointer * emitted as an
unmanaged one
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Wed Sep 21 02:58:08 EDT 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 jankit at novell.com.
http://bugzilla.ximian.com/show_bug.cgi?id=76173
--- shadow/76173 2005-09-21 02:58:08.000000000 -0400
+++ shadow/76173.tmp.8672 2005-09-21 02:58:08.000000000 -0400
@@ -0,0 +1,44 @@
+Bug#: 76173
+Product: Mono: Compilers
+Version: 1.1
+OS: unknown
+OS Details:
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: C#
+AssignedTo: rharinath at novell.com
+ReportedBy: jankit at novell.com
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Managed pointer * emitted as an unmanaged one
+
+Please fill in this template when reporting a bug, unless you know what you
+are doing.
+Description of Problem:
+
+Test case (attached):
+
+*********
+ uint [] abc = new uint [5];
+ fixed (uint* u = abc) {
+ }
+*********
+
+The managed pointer '*' in C# is emitted as E_T_PTR (unmanaged pointer) by
+mcs. monodis output shows:
+
+ .locals (
+ unsigned int32[] V_0,
+ unsigned int32* pinned V_1) ---> unmanaged pointer
+
+Test case compiled with csc and monodis'ed shows:
+
+ .locals (
+ unsigned int32[] V_0,
+ unsigned int32& pinned V_1) ---> managed pointer
+
+Note: In ILAsm, '*' represents unmanaged ptr, and & is for managed.
More information about the mono-bugs
mailing list