diff --git a/SharedForward.h.in b/SharedForward.h.in
index dd4d462a5f8a8c7a841cbd2a25422f417bdefac0..7ff29b40adbd3aec2b2b11b76dc4c20baca27dc2 100644
--- a/SharedForward.h.in
+++ b/SharedForward.h.in
@@ -512,7 +512,7 @@ static void kwsys_shared_forward_execvp(const char* cmd,
   /* Invoke the child process.  */
 #if defined(_MSC_VER)
   _execvp(cmd, argv);
-#elif defined(__MINGW32__)
+#elif defined(__MINGW32__) && !defined(__MINGW64__)
   execvp(cmd, argv);
 #else
   execvp(cmd, (char* const*)argv);