libstdc++/7439: C99 compat: Can't use the name INFINITY in an enum.
Gabriel Dos Reis
gdr@integrable-solutions.net
Fri Aug 2 11:20:00 GMT 2002
bkoz@gcc.gnu.org writes:
| Old Synopsis: Can't use the name INFINITY in an enum.
| New Synopsis: C99 compat: Can't use the name INFINITY in an enum.
|
| State-Changed-From-To: open->analyzed
| State-Changed-By: bkoz
| State-Changed-When: Fri Aug 2 09:52:38 2002
| State-Changed-Why:
| This comes from /usr/include/bits/mathdef.h:
|
| # define INFINITY HUGE_VALF
|
| It looks like INFINITY is a C99 macro.
|
| Currently, the plan WRT libstdc++ and C99 macros is undefined. It's also an issue for things like isnan, et. al. It's also a cause for the persistent failure of
|
| 26_numerics/c99_classification_macros_c++.cc
|
| I don't know what to do, but whatever is done should be consitent with all of these C99'isms.
As part of my current work, I will provide support for infinities in
numeric_limits<> so that the INFINITY macro become redondant. Then
in the compliant C headers, we could #undef them.
I'll post a RFC for a possible strategy with C99 macros.
Thanks,
-- Gaby
More information about the Gcc-bugs
mailing list