In this section we describe some special rules that apply to macros and macro expansion, and point out certain cases in which the rules have counter-intuitive consequences that you must watch out for.
| • Misnesting: | ||
| • Operator Precedence Problems: | ||
| • Swallowing the Semicolon: | ||
| • Duplication of Side Effects: | ||
| • Self-Referential Macros: | ||
| • Argument Prescan: | ||
| • Newlines in Arguments: |
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-9.2.0/cpp/Macro-Pitfalls.html