math.h: Warn about an already-defined log macro

This is a common programming error, and the cause of the problem is not
always obvious.

<tgmath.h> defines a log macro, but it includes <math.h> before that, so
that is compatible with the warning.
This commit is contained in:
Florian Weimer 2017-09-04 10:52:28 +02:00
parent 059b64046e
commit b38042f514
2 changed files with 9 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2017-09-04 Florian Weimer <fweimer@redhat.com>
* math/math.h: Issue warning if log is defined.
2017-09-04 Joseph Myers <joseph@codesourcery.com> 2017-09-04 Joseph Myers <joseph@codesourcery.com>
* scripts/build-many-glibcs.py (Context.checkout): Default Linux * scripts/build-many-glibcs.py (Context.checkout): Default Linux

View File

@ -26,6 +26,11 @@
#define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION #define __GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATION
#include <bits/libc-header-start.h> #include <bits/libc-header-start.h>
#if defined log && defined __GNUC__
# warning A macro called log was already defined when <math.h> was included.
# warning This will cause compilation problems.
#endif
__BEGIN_DECLS __BEGIN_DECLS
/* Get definitions of __intmax_t and __uintmax_t. */ /* Get definitions of __intmax_t and __uintmax_t. */