aboutsummaryrefslogtreecommitdiff
path: root/gzguts.h
diff options
context:
space:
mode:
authorMark Adler <madler@alumni.caltech.edu>2024-02-06 15:59:25 -0800
committerMark Adler <madler@alumni.caltech.edu>2024-02-06 18:27:44 -0800
commite342bb3daef3f6d89dd1d39a3059355db5a64c49 (patch)
treea576c06ea7322b32e9232971fa57c515f78f61f5 /gzguts.h
parent915a3d5b7be87a66bc3c3e1652c596658962e6a1 (diff)
downloadzlib-e342bb3daef3f6d89dd1d39a3059355db5a64c49.tar.gz
zlib-e342bb3daef3f6d89dd1d39a3059355db5a64c49.tar.bz2
zlib-e342bb3daef3f6d89dd1d39a3059355db5a64c49.zip
Assume no snprintf() or vsnprintf() if C89/90 in gzguts.h.
Those functions were introduced in C99. However it is assumed that they are there if under Windows, since Visual C claims C89/90, but does have those functions, or variants.
Diffstat (limited to 'gzguts.h')
-rw-r--r--gzguts.h33
1 files changed, 14 insertions, 19 deletions
diff --git a/gzguts.h b/gzguts.h
index 028e584..074ec84 100644
--- a/gzguts.h
+++ b/gzguts.h
@@ -72,33 +72,28 @@
72#endif 72#endif
73 73
74#ifndef HAVE_VSNPRINTF 74#ifndef HAVE_VSNPRINTF
75# ifdef MSDOS 75# if !defined(NO_vsnprintf) && \
76 (defined(MSDOS) || defined(__TURBOC__) || defined(__SASC) || \
77 defined(VMS) || defined(__OS400) || defined(__MVS__))
76/* vsnprintf may exist on some MS-DOS compilers (DJGPP?), 78/* vsnprintf may exist on some MS-DOS compilers (DJGPP?),
77 but for now we just assume it doesn't. */ 79 but for now we just assume it doesn't. */
78# define NO_vsnprintf 80# define NO_vsnprintf
79# endif 81# endif
80# ifdef __TURBOC__
81# define NO_vsnprintf
82# endif
83# ifdef WIN32 82# ifdef WIN32
84/* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */ 83/* In Win32, vsnprintf is available as the "non-ANSI" _vsnprintf. */
85# if !defined(vsnprintf) && !defined(NO_vsnprintf) 84# if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 )
86# if !defined(_MSC_VER) || ( defined(_MSC_VER) && _MSC_VER < 1500 ) 85# ifndef vsnprintf
87# define vsnprintf _vsnprintf 86# define vsnprintf _vsnprintf
88# endif 87# endif
89# endif 88# endif
90# endif 89# elif !defined(__STDC_VERSION__) || __STDC_VERSION__-0 < 199901L
91# ifdef __SASC 90/* Otherwise if C89/90, assume no C99 snprintf() or vsnprintf() */
92# define NO_vsnprintf 91# ifndef NO_snprintf
93# endif 92# define NO_snprintf
94# ifdef VMS 93# endif
95# define NO_vsnprintf 94# ifndef NO_vsnprintf
96# endif 95# define NO_vsnprintf
97# ifdef __OS400__ 96# endif
98# define NO_vsnprintf
99# endif
100# ifdef __MVS__
101# define NO_vsnprintf
102# endif 97# endif
103#endif 98#endif
104 99