* Michael Stevens (Michael.Stevens@epost.de) [20030310 20:52]:
The problem can be reproduced with the simple test program.
#include <limits> #include <iostream>
int main() { std::cout << std::numeric_limits<float>::has_infinity << std::endl; std::cout << std::numeric_limits<float>::infinity() << std::endl; }
See http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=3865 , which btw. uses the exact same test program. As you see fropm the audit trail, it was decided that this would not be fixed as it isn't a regression. 3.2 basically is 3.1 with a new API, and does _not_ have a fully standard conforming C++ library. You simply see one of the missing things.
Clearly SuSE has not completed the compiler/host config for GCC3.2
This is a generic GCC 3.2 problem, not a specific SuSE one. GCC 3.2 simply does not include full support. The GCC 3.3 that will come with SuSE Linux 8.2 will, among other things, have this fixed.
Given that non of these numeric_limits are defined in the distributed GCC package, I assume they were also not correctly defined when the other packages in the distro were compiled. I wonder if the numeric results from any of the packages using C++ are effected!
I really doubt there are any packages in the distribution that require
numeric_limts<> support as gcc 2.95.x was even worse in implementing these.
Philipp
--
Philipp Thomas