So stdint and exact-width types are part of the new C standard, but not C++. Fortunately, I can still #include <stdint.h> (although not portably); however what makes least sense is that, although the XintN_t types are made available, their counterpart max sizes, XINTN_MAX defines, are being held back by an "#if !defined ( __cplusplus) || defined (__STDC_LIMIT_MACROS)"
Why is this? Why allow C++ to include the types, but not their max sizes? What would be the danger in removing the ifdef from the header? Or re-defining the macro in my own code?