Clang warns
test/test_INT_format.h:28:26: warning: identifier after literal will
be treated as a reserved user-defined literal suffix in C++11
[-Wc++11-compat-reserved-user-defined-literal]
" expression [%"KWIML_INT_PRI##PRI"],"
because the KWIML_... part is an identifier lexically immediately
following a string literal. Add a space between the string literal
and the identifier to avoid the C++11 user-defined literal syntax.
Our TEST* macro calls pass arguments such as "int64_t" with the
expectation that the preprocessing token will be used literally.
Some platforms #define int64_t as "long long" which is not a valid
preprocessing token. Perform preprocessor symbol concatenation
on the type names at the first level of macro evaluation to avoid
expanding the names.
Provides header files that use preprocessor tests to detect and provide
information about the compiler and its target architecture. The headers
contain no configuration-time test results and thus may be installed
into an architecture-independent include directory. This makes them
suitable for use in the public interface of any package.