2005-10-04 Martin Baulig <martin@ximian.com>
[mono.git] / mono / tests / pinvoke-2.cs
1 //
2 // pinvoke-2.cs:
3 //
4 //  Tests for net 2.0 pinvoke features
5 //
6
7 using System;
8 using System.Runtime.InteropServices;
9
10 public class Tests {
11
12         public static int Main () {
13                 return TestDriver.RunTests (typeof (Tests));
14         }
15
16         [UnmanagedFunctionPointerAttribute (CallingConvention.Cdecl)]
17         public delegate int CdeclDelegate (int i, int j);
18
19         [DllImport ("libtest", EntryPoint="mono_test_marshal_cdecl_delegate")]
20         public static extern int mono_test_marshal_cdecl_delegate (CdeclDelegate d);    
21
22         public static int cdecl_delegate (int i, int j) {
23                 return i + j;
24         }
25
26         static int test_0_marshal_cdecl_delegate () {
27                 CdeclDelegate d = new CdeclDelegate (cdecl_delegate);
28
29                 return mono_test_marshal_cdecl_delegate (d);
30         }
31 }