libstdc++/2311
bkoz@gcc.gnu.org
bkoz@gcc.gnu.org
Mon Mar 19 12:56:00 GMT 2001
The following reply was made to PR libstdc++/2311; it has been noted by GNATS.
From: bkoz@gcc.gnu.org
To: bkoz@gcc.gnu.org, gcc-gnats@gcc.gnu.org, nobody@gcc.gnu.org,
pcarlini@unitus.it
Cc:
Subject: Re: libstdc++/2311
Date: 19 Mar 2001 20:50:45 -0000
Synopsis: isnan(), isinf(), etc, not undefined
Responsible-Changed-From-To: unassigned->bkoz
Responsible-Changed-By: bkoz
Responsible-Changed-When: Mon Mar 19 12:50:45 2001
Responsible-Changed-Why:
Responsible
State-Changed-From-To: open->feedback
State-Changed-By: bkoz
State-Changed-When: Mon Mar 19 12:50:45 2001
State-Changed-Why:
A couple of issues:
1) iso 14882 (c++) 26.5 says nothing about these macros
2) iso 9998 (c) 7.12.3 Classification macros
#include <math.h>
int isnan(real-floating x);
Note the differce: standards-specify one argument.
I suppose this doesn't really matter, and that v3 should not have these macros in its namespace.
The macros usage is turned on by this define in math.h:
/* ISO C99 defines some generic macros which work on any data type. */
#if __USE_ISOC99
this is on by default for gnu/linux (see config/os/gnu-linux/bits/os_defines.h)
You could turn off all the ISO C 9899 stuff for v3, but it's not going to be possible to just turn off these bits. (Thus, wchar_t bits and long long/long double bits go too.)
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=2311&database=gcc
More information about the Gcc-prs
mailing list