Version: **
Question:
What are the reasons for failure to compile the Variadic Macro: #define Macro(...) __VA_ARGS__ in FR Softune V6?
Answer:
The variadic macro is a new macro for the C99 standard of C language (ISO/IEC 9899:1999). The compiler of the FR Softune V6 supports ANSI and C90 (ISO/IEC 9899:1990) but not C99. Therefore, the variadic macro definition, as shown below, will fail when compiling in FR Softune V6:
//Eg.
#define MY_DEBUG_LOG(...) (printf(__VA_ARGS__))
#define MY_DEBUG_TRACE(format,...) (printf(format,##__VA_ARGS__))
For more information about the supported C/C++ language standards, refer to the FR Family Softune C/C_++ Compiler Manual for V6.
Comments