X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Ftests%2Fpinvoke11.cs;h=252700fe3442a38b7af62472c35d1df83de2491c;hb=519043400473f298a823ea3da52ef1851cc0cd2e;hp=bff30b58bd7d9a048e0b2f7ce52b1db05eee26e0;hpb=af90548a08ef5effc93b083b7eec44daa178b141;p=mono.git diff --git a/mono/tests/pinvoke11.cs b/mono/tests/pinvoke11.cs index bff30b58bd7..252700fe344 100644 --- a/mono/tests/pinvoke11.cs +++ b/mono/tests/pinvoke11.cs @@ -49,6 +49,17 @@ public struct sc5 public byte c4; } +public struct FI { + public float f1; + public float f2; + public float f3; +} + +public struct NestedFloat { + public FI fi; + public float f4; +} + public class Test { [DllImport ("libtest")] @@ -75,6 +86,9 @@ public class Test [DllImport ("libtest", EntryPoint="mono_return_int_su")] public static extern int mono_return_int_su (su a); + [DllImport ("libtest", EntryPoint="mono_return_nested_float")] + public static extern NestedFloat mono_return_nested_float (); + static int Main() { if (mono_return_int (5) != 5) @@ -141,6 +155,10 @@ public class Test if (s6.c0 != 5 || s6.c1 != 7 || s6.c2 != 9 || s6.c3 != 11 || s6.c4 != 13) return 11; + var f = mono_return_nested_float (); + if (f.fi.f1 != 1.0) + return 12; + return 0; } }