https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114181

--- Comment #14 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Libc headers define lots of macros, we don't #undef them in C++ headers unless
they use the name of a function defined by the C++ library (because C++ says
its library functions must be real functions and must not be hidden by macros).

If you want to provide an implementation of issubnormal (e.g. as
boost::issubnormal) then you need to do:

#include <math.h>
#undef issubnormal

I don't think it's a libstdc++ bug that we don't #undef non-standard macros.

It's certainly not a GCC component=c bug that Glibc defines a macro in its
<math.h>.

So there's no GCC bug here.

Like Andrew said, iff we need to define std::issubnormal then we'll #undef it,
but we're not going to do that until we need to.

Reply via email to