...
When multiple statements are used in a macro, they should be bound together in a do-while loop syntactically, so the macro can appear safely inside if clauses or other places that expect a single statement or a statement block. (Alternatively, when an if
, for
or while
statement uses braces even for a single body statement, then multiple statements in a macro will be expanded correctly even without a do-while loop. See EXP19-C. Use braces for if, for, or while statement.)
Noncompliant Code Example
...