the tokens are legal ANSI-C. Maybe to enable 'op' to be a macro itself? Anyway, with the ## concatenation Gcc 3.1's integrated `cpp' treats "=op(" as a single token vs. the three tokens it is.