Просмотр исходного кода

mhd_limits.h: use GCC predefined macros if available

Evgeny Grin (Karlson2k) 9 лет назад
Родитель
Сommit
abdd48c5f2
1 измененных файлов с 21 добавлено и 1 удалено
  1. 21 1
      src/microhttpd/mhd_limits.h

+ 21 - 1
src/microhttpd/mhd_limits.h

@@ -33,7 +33,11 @@
 #endif /* HAVE_LIMITS_H */
 
 #ifndef LONG_MAX
+#ifdef __LONG_MAX__
+#define LONG_MAX __LONG_MAX__
+#else  /* ! __LONG_MAX__ */
 #define LONG_MAX ((long) ~(((uint64_t) 1) << (8 * sizeof(long) - 1)))
+#endif /* ! __LONG_MAX__ */
 #endif /* !OFF_T_MAX */
 
 #ifndef ULLONG_MAX
@@ -41,19 +45,35 @@
 #endif /* !ULLONG_MAX */
 
 #ifndef INT32_MAX
+#ifdef __INT32_MAX__
+#define INT32_MAX __INT32_MAX__
+#else  /* ! __INT32_MAX__ */
 #define INT32_MAX ((int32_t)0x7FFFFFFF)
+#endif /* ! __INT32_MAX__ */
 #endif /* !INT32_MAX */
 
 #ifndef UINT32_MAX
+#ifdef __UINT32_MAX__
+#define UINT32_MAX __UINT32_MAX__
+#else  /* ! __UINT32_MAX__ */
 #define UINT32_MAX ((int32_t)0xFFFFFFFF)
-#endif /* !INT32_MAX */
+#endif /* ! __UINT32_MAX__ */
+#endif /* !UNT32_MAX */
 
 #ifndef UINT64_MAX
+#ifdef __UINT64_MAX__
+#define UINT64_MAX __UINT64_MAX__
+#else  /* ! __UINT64_MAX__ */
 #define UINT64_MAX ((uint64_t)0xFFFFFFFFFFFFFFFF)
+#endif /* ! __UINT64_MAX__ */
 #endif /* !INT32_MAX */
 
 #ifndef SIZE_MAX
+#ifdef __SIZE_MAX__
+#define SIZE_MAX __SIZE_MAX__
+#else  /* ! __SIZE_MAX__ */
 #define SIZE_MAX ((size_t) ~((size_t)0))
+#endif /* ! __SIZE_MAX__ */ 
 #endif /* !SIZE_MAX */
 
 #ifndef OFF_T_MAX