diff --git a/src/file.cpp b/src/file.cpp
index 57f4e13..ec1181c 100644
--- a/src/file.cpp
+++ b/src/file.cpp
@@ -293,7 +293,7 @@ bool MDFNFILE::MakeMemWrapAndClose(void *tz, int type)
    goto doret;
   }
 
-  while((howmany = gzread(tz, f_data + cur_size, cur_alloced - cur_size)) > 0)
+  while((howmany = gzread((gzFile)tz, f_data + cur_size, cur_alloced - cur_size)) > 0)
   {
    cur_size += howmany;
    cur_alloced <<= 1;
@@ -320,7 +320,7 @@ bool MDFNFILE::MakeMemWrapAndClose(void *tz, int type)
   {
    int gzerrnum = 0;
    const char *gzerrstring;
-   if((gzerrstring = gzerror(tz, &gzerrnum)) && gzerrnum != Z_OK && gzerrnum != Z_STREAM_END)
+   if((gzerrstring = gzerror((gzFile)tz, &gzerrnum)) && gzerrnum != Z_OK && gzerrnum != Z_STREAM_END)
    {
     if(gzerrnum != Z_ERRNO)
     {
@@ -365,7 +365,7 @@ bool MDFNFILE::MakeMemWrapAndClose(void *tz, int type)
  }
  else if(type == MDFN_FILETYPE_GZIP)
  {
-  gzclose(tz);
+  gzclose((gzFile)tz);
  }
  else if(type == MDFN_FILETYPE_ZIP)
  {