[Mono-bugs] [Bug 77230][Nor] Changed - Marshalling C unions not working anymore

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Thu Jan 12 17:12:52 EST 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 vargaz at gmail.com.


--- shadow/77230	2006-01-12 14:28:07.000000000 -0500
+++ shadow/77230.tmp.16440	2006-01-12 17:12:52.000000000 -0500
@@ -1,14 +1,14 @@
 Bug#: 77230
 Product: Mono: Runtime
 Version: 1.1
+OS: unknown
 OS Details: 
 Status: NEW   
+Severity: Unknown
 Priority: Normal
 Component: interop
 AssignedTo: mono-bugs at ximian.com                            
 ReportedBy: maurits.rijk at philips.com               
 QAContact: mono-bugs at ximian.com
 TargetMilestone: ---
@@ -37,6 +37,15 @@
 ** ERROR **: Type Gimp.ParamData which has an [ExplicitLayout] attribute
 cannot have two fields with the same offset.
 On win32 with .NET 2.0 I don't get this error.
 I will try to come up with a small example if needed.
+------- Additional Comments From vargaz at gmail.com  2006-01-12 17:12 -------
+MS.NET allows this, but I'm not sure the resulting code works in any
+sensible way. When marshalling such a struct to native code, the
+runtime marshaller copies all three fields to the same position in the
+native struct, so that position will have the value of the last field,
+in this case d_int8. Or are you using this to marshal data in the
+native->managed direction ?

More information about the mono-bugs mailing list