diff options
-rw-r--r-- | c/libffi_msvc/ffi.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/c/libffi_msvc/ffi.c b/c/libffi_msvc/ffi.c index dab2b50..8a56c87 100644 --- a/c/libffi_msvc/ffi.c +++ b/c/libffi_msvc/ffi.c @@ -342,6 +342,8 @@ ffi_closure_SYSV (ffi_closure *closure, char *argp) result types except for floats; we have to 'mov xmm0, rax' in the caller to correct this. */ + if (rtype == FFI_TYPE_STRUCT) + return resp; return *(void **)resp; #endif } |