Well according to this page: http://www.keil.com/support/man/docs/armccref/armccref_BABJFEFG.htm You have __BIG_ENDIAN which is defined when compiling for a big endian target....
c++,windows,macros,predefined-macro
You're depending on string literal concatenation, except that all of the terms aren't string literals. I assume you were previously doing it like so: #define MY_TRACE( mask, format, ... ) \ GlobalTrace( mask, L"-[" __FILE__ L":" format , __VA_ARGS__ ) If __FILE__ and format expand to a string literal, the...
c++,visual-c++,macros,predefined-macro
Just use L(__FUNCTION__ L" : A diagnostic message"); When adjacent string literals get combined, the result will be a wide string if any of the components were. There's nothing immediately wrong with using L as the name of a function... it's rather meaningless however. Good variable and function identifiers should...
c++,gcc,g++,c++14,predefined-macro
According to the GCC CPP manual (version 4.9.2 and 5.1.0): __cplusplus This macro is defined when the C++ compiler is in use. You can use __cplusplus to test whether a header is compiled by a C compiler or a C++ compiler. This macro is similar to __STDC_VERSION__, in that it...