summaryrefslogtreecommitdiffstats
path: root/testprogs/win32/midltests/todo/midltests-array-range.idl
diff options
context:
space:
mode:
Diffstat (limited to 'testprogs/win32/midltests/todo/midltests-array-range.idl')
-rw-r--r--testprogs/win32/midltests/todo/midltests-array-range.idl39
1 files changed, 39 insertions, 0 deletions
diff --git a/testprogs/win32/midltests/todo/midltests-array-range.idl b/testprogs/win32/midltests/todo/midltests-array-range.idl
new file mode 100644
index 0000000..1d60fd6
--- /dev/null
+++ b/testprogs/win32/midltests/todo/midltests-array-range.idl
@@ -0,0 +1,39 @@
+#ifndef MIDLTESTS_C_CODE
+
+[
+ uuid("225b9fcb-eb3d-497b-8b0b-591f049a2507"),
+ pointer_default(unique)
+]
+interface midltests
+{
+ long midltests_fn(
+ [out,ref] long *count,
+ [out,ref,size_is(,*count),range(0,1)] long **array,
+ [out,ref] long *error
+ );
+}
+
+#elif MIDLTESTS_C_CODE
+
+static void midltests(void)
+{
+ long count;
+ long *array;
+ long error;
+
+ cli_midltests_fn(&count, &array, &error);
+}
+
+long srv_midltests_fn(long *count, long **array, long *error)
+{
+ printf("srv_midltests_fn: Start\n");
+ *count=2;
+ *array=(long *)malloc((*count) * sizeof(long));
+ (*array)[0] = 7;
+ (*array)[1] = 7;
+ *error=0;
+ printf("srv_midltests_fn: End\n");
+ return 0x65757254;
+}
+
+#endif