Message 245148 - Python tracker (original) (raw)

I note that the code for CFFI has a fix in ffi_prep_incoming_args_SYSV, as follows:

#ifdef _WIN64 if (z > 8) { /* On Win64, if a single argument takes more than 8 bytes, then it is always passed by reference. / p_argv = ((void) argp); z = 8; } else #endif p_argv = (void) argp; / The original code, works for 32-bit */

(Source: https://bitbucket.org/cffi/cffi/src/abc8ff5b2885b3d9f22bbb314a011b8dd63c9e14/c/libffi_msvc/ffi.c?at=default)