blob: 5d717e658c193821185901f9acf8e6f1eb5c8578 [file] [log] [blame]
--- Python-3.7.1/Modules/_ctypes/callproc.c.orig 2018-10-21 20:21:21.305822500 +0200
+++ Python-3.7.1/Modules/_ctypes/callproc.c 2018-10-21 20:51:03.252890200 +0200
@@ -701,6 +701,21 @@
}
}
+#ifdef __MINGW32__
+/*
+Per: https://msdn.microsoft.com/en-us/library/7572ztz4.aspx
+To be returned by value in RAX, user-defined types must have a length
+of 1, 2, 4, 8, 16, 32, or 64 bits
+*/
+static int can_return_struct_as_int(size_t s)
+{
+ return s == 1 || s == 2 || s == 4;
+}
+static int can_return_struct_as_sint64(size_t s)
+{
+ return s == 8;
+}
+#endif
ffi_type *_ctypes_get_ffi_type(PyObject *obj)
{