Make z_size_t 64 bits when compiling on Windows with Z_SOLO.

Z_SOLO defines z_size_t as an unsigned long. However Windows and
MinGW-w64 are LLP64, where a long is 32 bits, but a size_t is 64
bits. This makes z_size_t, used by adler32_z() and crc32_z(), 64
bits on those systems.
diff --git a/zconf.h b/zconf.h
index bf977d3..5733ed6 100644
--- a/zconf.h
+++ b/zconf.h
@@ -241,7 +241,11 @@
 #endif
 
 #ifdef Z_SOLO
-   typedef unsigned long z_size_t;
+#  ifdef _WIN64
+     typedef unsigned long long z_size_t;
+#  else
+     typedef unsigned long z_size_t;
+#  endif
 #else
 #  define z_longlong long long
 #  if defined(NO_SIZE_T)
diff --git a/zconf.h.cmakein b/zconf.h.cmakein
index 247ba24..9cc20bf 100644
--- a/zconf.h.cmakein
+++ b/zconf.h.cmakein
@@ -243,7 +243,11 @@
 #endif
 
 #ifdef Z_SOLO
-   typedef unsigned long z_size_t;
+#  ifdef _WIN64
+     typedef unsigned long long z_size_t;
+#  else
+     typedef unsigned long z_size_t;
+#  endif
 #else
 #  define z_longlong long long
 #  if defined(NO_SIZE_T)
diff --git a/zconf.h.in b/zconf.h.in
index bf977d3..5733ed6 100644
--- a/zconf.h.in
+++ b/zconf.h.in
@@ -241,7 +241,11 @@
 #endif
 
 #ifdef Z_SOLO
-   typedef unsigned long z_size_t;
+#  ifdef _WIN64
+     typedef unsigned long long z_size_t;
+#  else
+     typedef unsigned long z_size_t;
+#  endif
 #else
 #  define z_longlong long long
 #  if defined(NO_SIZE_T)