This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
libstdc++/3865: numeric_limits<double>::has_infinity is set to false
- To: gcc-gnats at gcc dot gnu dot org
- Subject: libstdc++/3865: numeric_limits<double>::has_infinity is set to false
- From: ecohen at angeles dot com
- Date: 29 Jul 2001 05:47:23 -0000
- Reply-To: ecohen at angeles dot com
>Number: 3865
>Category: libstdc++
>Synopsis: numeric_limits<double>::has_infinity is set to false
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Jul 28 22:56:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: ecohen@angeles.com
>Release: gcc-3.0
>Organization:
>Environment:
sparc-sun-solaris2.7
>Description:
The template specialization numeric_limits<double> (and float and long double) have the 'has_infinity' member set to false. They also return a zero value for infinity and do not implement the NaN functions.
>How-To-Repeat:
------ start of test.cpp
#include <iostream>
#include <limits>
main() {
std::cout
<< "has infinity " << std::numeric_limits<double>::has_infinity
<< "\n"
<< "inifinity " << std::numeric_limits<double>::infinity() << "\
n";
}
------ end of test.cpp
compile output:
% g++ -v test.cpp
Reading specs from /disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/specs
Configured with: ../gcc-3.0/configure --prefix=/disk3/users/ecohen/GNU/INSTALL/sol2 --with-gnu-as --with-gnu-ld
Thread model: posix
gcc version 3.0
/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/cc1plus -v -D__GNUC__=3 -D__GNUC_MINOR__=0 -D__GNUC_PATCHLEVEL__=0 -Dsparc -Dsun -Dunix -D__svr4__ -D__SVR4 -D__sparc__ -D__sun__ -D__unix__ -D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem=unix -Asystem=svr4 -D__NO_INLINE__ -D__STDC_HOSTED__=1 -D_XOPEN_SOURCE=500 -D_LARGEFILE_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -D__EXTENSIONS__ -D__GCC_NEW_VARARGS__ -Acpu=sparc -Amachine=sparc test.cpp -D__GNUG__=3 -D__GXX_DEPRECATED -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -quiet -dumpbase test.cpp -version -o /var/tmp/ccptgqdX.s
GNU CPP version 3.0 (cpplib) (sparc)
GNU C++ version 3.0 (sparc-sun-solaris2.7)
compiled by GNU C version 3.0.
ignoring nonexistent directory "/disk3/users/ecohen/GNU/INSTALL/sol2/sparc-sun-solaris2.7/include"
#include "..." search starts here:
#include <...> search starts here:
/disk3/users/ecohen/GNU/INSTALL/sol2/include/g++-v3
/disk3/users/ecohen/GNU/INSTALL/sol2/include/g++-v3/sparc-sun-solaris2.7
/disk3/users/ecohen/GNU/INSTALL/sol2/include/g++-v3/backward
/usr/local/include
/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/include
/usr/include
End of search list.
/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/../../../../sparc-sun-solaris2.7/bin/as --traditional-format -V -Qy -s -o /var/tmp/ccypvOuv.o /var/tmp/ccptgqdX.s
GNU assembler version 2.11.2 (sparc-sun-solaris2.7) using BFD version 2.11.2
/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/collect2 -V -Y P,/usr/ccs/lib:/usr/lib -Qy /disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/crt1.o /disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/crti.o /usr/ccs/lib/values-Xa.o /disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/crtbegin.o -L/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0 -L/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/../../../../sparc-sun-solaris2.7/lib -L/usr/ccs/bin -L/usr/ccs/lib -L/disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/../../.. /var/tmp/ccypvOuv.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/crtend.o /disk3/users/ecohen/GNU/INSTALL/sol2/lib/gcc-lib/sparc-sun-solaris2.7/3.0/crtn.o
GNU ld version 2.11.2 (with BFD 2.11.2)
Supported emulations:
elf32_sparc
elf64_sparc
Run output:
% a.out
has infinity 0
inifinity 0
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: