https://sourceware.org/bugzilla/show_bug.cgi?id=32073
--- Comment #5 from Jan Beulich <jbeulich at suse dot com> --- (In reply to Andreas Schwab from comment #4) > $ cat svml_d_acos2_core-sse2.S > #define JUMPTARGET(name) *name##@GOTPCREL(%rip) > > .macro WRAPPER_IMPL_SSE2 callee > call JUMPTARGET(\callee) > .endm > .text > WRAPPER_IMPL_SSE2 acos Which cpp expands to .macro WRAPPER_IMPL_SSE2 callee call *\ callee@GOTPCREL(%rip) .endm .text WRAPPER_IMPL_SSE2 acos Wow. Where's the blank coming from? I didn't know the pre-processor may insert random whitespace. And the pre-processed result is identical to that of the (imo) bogus call JUMPTARGET(\ callee) How's the consumer supposed to be telling apart which one it was originally? Yet then documentation is unclear on whether there may be whitespace between the \ and the parameter name. We could of course make macro expansion skip whitespace when a valid parameter name follows. Yet I fear there could be other anomalies as a result. -- You are receiving this mail because: You are on the CC list for the bug.