int opt_int(const char *arg, int *result);
int opt_ulong(const char *arg, unsigned long *result);
int opt_long(const char *arg, long *result);
-#if defined(INTMAX_MAX) && defined(UINTMAX_MAX)
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
int opt_imax(const char *arg, intmax_t *result);
int opt_umax(const char *arg, uintmax_t *result);
#endif
static const OPTIONS *opts;
static char prog[40];
-#if !defined(INTMAX_MAX) || !defined(UINTMAX_MAX)
+#if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901L
#define opt_imax opt_long
#define opt_umax opt_ulong
#endif
return 1;
}
-#if defined(INTMAX_MAX) && defined(UINTMAX_MAX)
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
/* Parse an intmax_t, put it into *result; return 0 on failure, else 1. */
int opt_imax(const char *value, intmax_t *result)
*
*/
-#include <openssl/opensslconf.h>
-
#ifndef HEADER_E_OS2_H
# define HEADER_E_OS2_H
+# include <openssl/opensslconf.h>
+
#ifdef __cplusplus
extern "C" {
#endif
# endif
/* Standard integer types */
-# if defined(__osf__) || defined(__sgi) || defined(__hpux) || defined(OPENSSL_SYS_VMS)
+# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L || \
+ defined(__osf__) || defined(__sgi) || defined(__hpux) || \
+ defined(OPENSSL_SYS_VMS)
# include <inttypes.h>
# elif defined(OPENSSL_SYS_UEFI)
typedef INT8 int8_t;
# endif
/*
- * We need a format operator for some client tools for uint64_t.
- * This is an attempt at doing so in a portable manner.
- * If we can't use a built-in definition, we'll revert to the previous
- * behavior that was hard-coded but now causing compiler warnings on
- * some systems (e.g. Mac OS X).
+ * We need a format operator for some client tools for uint64_t. If inttypes.h
+ * isn't available or did not define it, just go with hard-coded.
*/
# ifndef PRIu64
-# ifdef __STDC_VERSION__
-# if (__STDC_VERSION__ >= 199901L)
-# include <inttypes.h>
-# endif
-# endif
-# ifndef PRIu64
-# define PRIu64 "lu"
-# endif
+# define PRIu64 "lu"
# endif
/* ossl_inline: portable inline definition usable in public headers */
typedef struct ocsp_response_st OCSP_RESPONSE;
typedef struct ocsp_responder_id_st OCSP_RESPID;
-#if defined(INTMAX_MAX) && defined(UINTMAX_MAX)
+#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
typedef intmax_t ossl_intmax_t;
typedef uintmax_t ossl_uintmax_t;
#else