Commits

Armin Rigo committed 1e1f884

Fix for win64

  • Participants
  • Parent commits 2162ca1

Comments (0)

Files changed (1)

c/libffi_msvc/ffi.c

 
 #ifdef _WIN64
       if (z > 8)
-          *p_argv = *((void**) argp);   /* indirect */
+        {
+          /* 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;