In C99, I include stdint.h
and that gives me UINT32_MAX
as well as uint32_t
data type. However, in C++ the UINT32_MAX
gets d
You may be able to eliminate the #include
order problems by changing your build process to define the __STDC_LIMIT_MACROS
symbol on the compiler command line instead:
cxx -D__STDC_LIMIT_MACROS ...
Of course, you would still have trouble if a header #undef
s this symbol.
Also, the authors of the standard library implementation that you are using might not have intended for users to set that particular symbol; there might be a compiler flag or a different symbol that users are intended to use to enable C99 types in C++.