diff --git a/mongoose.c b/mongoose.c
index 6e787b588e8bf0aa1052b2d2706a75135f68c976..20e36b4c92ebfe7dbdd22f967ac2cae4a7195596 100644
--- a/mongoose.c
+++ b/mongoose.c
@@ -9142,7 +9142,7 @@ int mg_stat(const char *path, cs_stat_t *st) {
   wchar_t wpath[MAX_PATH_SIZE];
   to_wchar(path, wpath, ARRAY_SIZE(wpath));
   DBG(("[%ls] -> %d", wpath, _wstati64(wpath, st)));
-  return _wstati64(wpath, (struct _stati64 *) st);
+  return _wstati64(wpath, st);
 #else
   return stat(path, st);
 #endif
diff --git a/mongoose.h b/mongoose.h
index 65f7eac4b28861a3251540e98de9f57cc35d7195..61890d474577625ff835e62cff007b6eef87d3a9 100644
--- a/mongoose.h
+++ b/mongoose.h
@@ -248,11 +248,7 @@ typedef uint32_t in_addr_t;
 #define INT64_FMT "I64d"
 #define INT64_X_FMT "I64x"
 #define SIZE_T_FMT "Iu"
-#if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR)
-typedef struct stat cs_stat_t;
-#else
 typedef struct _stati64 cs_stat_t;
-#endif
 #ifndef S_ISDIR
 #define S_ISDIR(x) (((x) &_S_IFMT) == _S_IFDIR)
 #endif