write_stubdescdecl(iface);
write_function_stubs(iface, proc_offset);
+#ifdef TARGET_amd64
+ print_client("#if !defined(__RPC_WIN64__)\n");
+#else
print_client("#if !defined(__RPC_WIN32__)\n");
+#endif
print_client("#error Invalid build platform for this stub.\n");
print_client("#endif\n");
break;
case RPC_FC_RP:
+ return RPC_FC_BOGUS_STRUCT;
+
case RPC_FC_UP:
case RPC_FC_FP:
case RPC_FC_OP:
+ if(sizeof(void*) != 4)
+ return RPC_FC_BOGUST_STRUCT;
+ has_pointer = 1;
+ break;
case RPC_FC_CARRAY:
case RPC_FC_CVARRAY:
case RPC_FC_BOGUS_ARRAY:
+ {
+ unsigned int ptr_type = get_attrv(field->attrs, ATTR_POINTERTYPE);
+ if(!ptr_type || ptr_type == RPC_FC_RP)
+ return RPC_FC_BOGUS_STRUCT;
+ else if (sizeof(void*) != 4)
+ return RPC_FC_BOGUS_STRUCT;
has_pointer = 1;
break;
+ }
/*
* Propagate member attributes
write_user_quad_list(proxy);
write_stubdesc(expr_eval_routines);
+#ifdef TARGET_amd64
+ print_proxy( "#if !defined(__RPC_WIN64__)\n");
+#else
print_proxy( "#if !defined(__RPC_WIN32__)\n");
+#endif
print_proxy( "#error Currently only Wine and WIN32 are supported.\n");
print_proxy( "#endif\n");
print_proxy( "\n");
write_function_stubs(iface, proc_offset);
- print_server("#if !defined(__RPC_WIN32__)\n");
+#ifdef TARGET_amd64
+ print_server("#if !defined(__RPC_WIN64__)\n");
+#else
+ print_server( "#if !defined(__RPC_WIN32__)\n");
+#endif
print_server("#error Invalid build platform for this stub.\n");
print_server("#endif\n");