Hello, In my C code, I have: #define message message("Start\n"); When I look at the SRC file, I see: RSEG ?CO?MAIN ?SC_0: DB 'S' ,'t' ,'a' ,'r' ,'t' ,00AH,000H ; message("Start\n"); Why does the C51 version 1.32 keep "Start\n" in the output? Does this also happen to newer version? Thanks, Anh
The macro expands to nothing, but the literal string constant still exists. How about another #define to make the constant vanish: //#define MessageString "Start\n" #define MessageString #define message(a) ... message(MessageString)