Messages in this thread | | | Date | Fri, 26 Mar 2010 14:04:08 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: [PATCH] Protect prefetch macro arguments. |
| |
On Fri, 26 Mar 2010, David Daney wrote: > > The GCC built-in __builtin_prefetch() is a vargs function. If we > don't wrap the macro parameter in parentheses, a comma operator in the > actual argument list might cause unintended parameters to be passed to > __builtin_prefetch().
This seems totally pointless and actively wrong.
You cannot have a comma operator in the actual argument list to the #define, because if you did, then you'd get a
macro "prefetch()" passed 2 arguments, but takes just 1
so the only way I see to pass a comma operator is to _already_ have the macro parameter in parenthesis.
Linus
| |