#if !defined(__FSTD_HDRS_LIMITS_H) || defined(__FSTD_HDRS_CXX_WRAP) #if !defined(__FSTD_HDRS_CXX_WRAP) #define __FSTD_HDRS_LIMITS_H 1 #endif #ifndef __FSTD_HDRS_LIMITS_H_MACROS #define __FSTD_HDRS_LIMITS_H_MACROS 1 #undef CHAR_BIT #define CHAR_BIT __CHAR_BIT__ #ifndef MB_LEN_MAX # define MB_LEN_MAX 1 #endif #undef SCHAR_MAX #define SCHAR_MAX __SCHAR_MAX__ #undef SCHAR_MIN #define SCHAR_MIN (-SCHAR_MAX - 1) #undef UCHAR_MAX #if __SCHAR_MAX__ == __INT_MAX__ # define UCHAR_MAX (SCHAR_MAX * 2U + 1U) #else # define UCHAR_MAX (SCHAR_MAX * 2 + 1) #endif #ifdef __CHAR_UNSIGNED__ # undef CHAR_MAX # define CHAR_MAX UCHAR_MAX # undef CHAR_MIN # if __SCHAR_MAX__ == __INT_MAX__ # define CHAR_MIN 0U # else # define CHAR_MIN 0 # endif #else # undef CHAR_MAX # define CHAR_MAX SCHAR_MAX # undef CHAR_MIN # define CHAR_MIN SCHAR_MIN #endif #undef SHRT_MAX #define SHRT_MAX __SHRT_MAX__ #undef SHRT_MIN #define SHRT_MIN (-SHRT_MAX - 1) #undef USHRT_MAX #if __SHRT_MAX_ == __INT_MAX__ # define USHRT_MAX (SHRT_MAX * 2U + 1U) #else # define USHRT_MAX (SHRT_MAX * 2 + 1) #endif #undef INT_MAX #define INT_MAX __INT_MAX__ #undef INT_MIN #define INT_MIN (-INT_MAX - 1) #undef UINT_MAX #define UINT_MAX (INT_MAX * 2U + 1U) #undef LONG_MAX #define LONG_MAX __LONG_MAX__ #undef LONG_MIN #define LONG_MIN (-LONG_MAX - 1L) #undef ULONG_MAX #define ULONG_MAX (LONG_MAX * 2UL + 1UL) #undef LLONG_MAX #define LLONG_MAX __LONG_LONG_MAX__ #undef LLONG_MIN #define LLONG_MIN (-LLONG_MAX - 1LL) #undef ULLONG_MAX #define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL) #endif #endif