Align libgc vcxproj with makefile.
[mono.git] / mono / tests / pinvoke11.cs
index bff30b58bd7d9a048e0b2f7ce52b1db05eee26e0..252700fe3442a38b7af62472c35d1df83de2491c 100644 (file)
@@ -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;
         }
 }