// Comment after backslash in #define causes compile errors
I had the same issue, looked for it on the internet, didn't get an answer, and I finally solved it right now:
You cannot have ANYTHING after a backslash \ . For example, I defined mine like so:
#define MY_MACRO(args) \ // The argument 'arg' does this thing - INVALID COMMENT
some_action(args) // Here I do this, this, and this - COMPLETELY VALID HERE (the macro doesn't continue furthermore -> macro continuation is not violated)
You cannot even put comments after this backslash (at least in C99 that I'm working on), because it breaks the macro continuation and the compiler gets confused over this, and then sees the next line ('some_action(args)') as some floating-in-the-air function call.
Note: Though, as I showed in the example above, you can freely have a comment on the very last line of the macro.
