OSDN Git Service

Disable macro implementations. Somehow I missed the following from the
authorManuel Novoa III <mjn3@codepoet.org>
Fri, 16 Aug 2002 18:35:07 +0000 (18:35 -0000)
committerManuel Novoa III <mjn3@codepoet.org>
Fri, 16 Aug 2002 18:35:07 +0000 (18:35 -0000)
commitdd518180f1dc60144f35f9016208f8fa503dff3a
tree3761b412088d927a1e8c754c47afdd10784fab1f
parente037958aa6a148131d90b77bbde117d078d292ff
Disable macro implementations.  Somehow I missed the following from the
ANSI/ISO C99 std...

A library macro that masks a function declaration expands to an
expression that evaluates each of its arguments once (and only once).
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Arguments that have side effects evaluate the same way whether the
expression executes the macro expansion or calls the function. Macros
for the functions getc and putc are explicit exceptions to this rule.
Their stream arguments can be evaluated more than once. Avoid argument
expressions that have side effects with these macros.

This will be reworked before the next release.  And yes, I feel stupid.
include/ctype.h