diff --git a/libc/include/llvm-libc-macros/limits-macros.h b/libc/include/llvm-libc-macros/limits-macros.h index 95f0f5f0baa58..3fab996b61ac9 100644 --- a/libc/include/llvm-libc-macros/limits-macros.h +++ b/libc/include/llvm-libc-macros/limits-macros.h @@ -148,7 +148,7 @@ #endif // INT_MAX #ifndef UINT_MAX -#define UINT_MAX (~0U) +#define UINT_MAX (INT_MAX * 2U + 1U) #endif // UINT_MAX #ifndef LONG_MAX @@ -160,7 +160,7 @@ #endif // LONG_MAX #ifndef ULONG_MAX -#define ULONG_MAX (~0UL) +#define ULONG_MAX (LONG_MAX * 2UL + 1UL) #endif // ULONG_MAX #ifndef LLONG_MAX @@ -172,7 +172,7 @@ #endif // LLONG_MAX #ifndef ULLONG_MAX -#define ULLONG_MAX (~0ULL) +#define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL) #endif // ULLONG_MAX // *_MIN macros