...
The invocation of the ABS()macro in this noncompliant code example expands to the following code. The resulting code has well-defined behavior, but causes n to be incremented twice rather than once, which may be surprising to those unfamiliar with the implementation of the macro , or unaware of the fact that they are using a macro in the first place.
...
Bibliography
| [ISO/IEC 9899:2011] | Section 5.1.2.3, "Program Execution" |
|---|
...