summaryrefslogtreecommitdiff
path: root/zlib.h
diff options
context:
space:
mode:
authorMark Adler <madler@alumni.caltech.edu>2016-09-21 20:07:37 -0700
committerMark Adler <madler@alumni.caltech.edu>2016-09-21 20:34:04 -0700
commit3fb251b363866417122fe54a158a1ac5a7837101 (patch)
treea4cd8da8fa279c66c533b0008192cb8da55bd5e0 /zlib.h
parent33a7aff45da511c3fc181071394ad9a01d5e8d61 (diff)
downloadzlib-3fb251b363866417122fe54a158a1ac5a7837101.tar.gz
Remove dummy structure declarations for old buggy compilers.
While woolly mammoths still roamed the Earth and before Atlantis sunk into the ocean, there were C compilers that could not handle forward structure references, e.g. "struct name;". zlib dutifully provided a work-around for such compilers. That work-around is no longer needed, and, per the recommendation of a security audit of the zlib code by Trail of Bits and TrustInSoft, in support of the Mozilla Foundation, should be removed since what a compiler will do with this is technically undefined. From the report: "there is no telling what interactions the bug could have in the future with link-time optimizations and type-based alias analyses, both features that are present (but not default) in clang."
Diffstat (limited to 'zlib.h')
-rw-r--r--zlib.h5
1 files changed, 0 insertions, 5 deletions
diff --git a/zlib.h b/zlib.h
index 67cfd7e..571847e 100644
--- a/zlib.h
+++ b/zlib.h
@@ -1759,11 +1759,6 @@ ZEXTERN int ZEXPORT gzgetc_ OF((gzFile file)); /* backward compatibility */
#endif /* !Z_SOLO */
-/* hack for buggy compilers */
-#if !defined(ZUTIL_H) && !defined(NO_DUMMY_DECL)
- struct internal_state {int dummy;};
-#endif
-
/* undocumented functions */
ZEXTERN const char * ZEXPORT zError OF((int));
ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp));