Hi Jim, > Then, look carefully and you'll see that all three branches > are the same, so you can condense them into one: > > #if @HAVE_LONG_64BIT@ || @HAVE_LONG_LONG_64BIT@ || defined _MSC_VER > # define INT64_MIN (~INT64_MIN) > # define INT64_MAX INT64_C(9223372036854775807) > # define UINT64_MAX UINT64_C(18446744073709551615) > #endif
Looks nicer than the existing code. But when used from C++, <stdint.h> must *not* define INT64_C, UINT64_C etc. if __STDC_CONSTANT_MACROS is not defined. So if a user wants only the __STDC_LIMIT_MACROS and not the __STDC_CONSTANT_MACROS, our stdint_.h should still work. We could escape to using __INT64_C and __UINT64_C, like glibc does, but this bears the risk of conflicts with the system headers. Bruno _______________________________________________ bug-gnulib mailing list bug-gnulib@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnulib