Read "3.10.6 Argument Prescan" in documentation for precompiler - everything is clear! #include <stdio.h> #define sym_a sym_b #define macro_over(x) x ## m #define macro_over1_5(x) macro_over(x) #define macro_over2(x) #x #define macro_over2_5(x) macro_over2(x) int main() { printf("%s\n", macro_over2_5(macro_over1_5(sym_a))); } Work well! -- View this message in context: http://old.nabble.com/predefines-issue-tp27443887p27444169.html Sent from the gcc - Help mailing list archive at Nabble.com.