I tried compiliing the code using -S and the compilation proceeds fine.
OK, that's not surprising, since with -S the compiler generates the assembler file and then stops. So, as the error message is generated by the assembler (which isn't being run when you compile with -S), I'd expect it not to apper.
But when I try generating the object code using -c option, I get the assembler messages.
Error: junk `@nonTXN' after expression
The thing to do is to look at the assembler file which was generated by the -S compilation, and try to assemble it yourself. Now that you have the source which the assembler is seeing you should be able to see what's wrong with it, and, where in your source it came from. (Since each instruction is decorated with a comment giving the source line).
Of course it's possible that this is a compiler bug, and it's generating bad assembly code, but if you can slice out the line the assembler is complaining about (with a bit of context), and post it, then it'll be easier to tell...
Jim Cownie
(Intel Performance, Analysis and Threading Lab)