From: Chris Lattner Date: Wed, 1 Apr 2009 00:44:37 +0000 (+0000) Subject: add support for the LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX limits.h GNU extensions. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2fc47b54ee2ef1419c0af4c80d52260b34056b85;p=clang add support for the LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX limits.h GNU extensions. rdar://6740292 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68169 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Headers/limits.h b/lib/Headers/limits.h index 1f542ea3d8..e4909ab034 100644 --- a/lib/Headers/limits.h +++ b/lib/Headers/limits.h @@ -96,4 +96,19 @@ #define ULLONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL) #endif +/* LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad + that we don't have something like #pragma poison that could be used to + deprecate a macro - the code should just use LLONG_MAX and friends. + */ +#if defined(__GNU_LIBRARY__) ? defined(__USE_GNU) : !defined(__STRICT_ANSI__) + +#undef LONG_LONG_MIN +#undef LONG_LONG_MAX +#undef ULONG_LONG_MAX + +#define LONG_LONG_MAX __LONG_LONG_MAX__ +#define LONG_LONG_MIN (-__LONG_LONG_MAX__-1LL) +#define ULONG_LONG_MAX (__LONG_LONG_MAX__*2ULL+1ULL) +#endif + #endif /* __CLANG_LIMITS_H */