diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-05-27 19:20:19 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-05-27 19:20:19 +0000 |
commit | 488133ac66acbad4fbb7177438c6a651c3de8a07 (patch) | |
tree | f502522737a39b8803377a20fa7f25073cbd16d1 /libstdc++-v3/include/c_std | |
parent | 5ed3bd072fbadb6e5dbac35a56dd35e94827b04d (diff) | |
download | gcc-488133ac66acbad4fbb7177438c6a651c3de8a07.tar.gz |
2008-05-27 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk r136046
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@136051 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/c_std')
-rw-r--r-- | libstdc++-v3/include/c_std/cmath | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/libstdc++-v3/include/c_std/cmath b/libstdc++-v3/include/c_std/cmath index 52c1d2a3505..948a0bece29 100644 --- a/libstdc++-v3/include/c_std/cmath +++ b/libstdc++-v3/include/c_std/cmath @@ -1,7 +1,7 @@ // -*- C++ -*- C forwarding header. // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, -// 2006, 2007 +// 2006, 2007, 2008 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -458,19 +458,8 @@ _GLIBCXX_END_NAMESPACE #if _GLIBCXX_USE_C99_MATH #if !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC -// These are possible macros imported from C99-land. For strict -// conformance, remove possible C99-injected names from the global -// namespace, and sequester them in the __gnu_cxx extension namespace. -_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) - - template<typename _Tp> - inline int - __capture_fpclassify(_Tp __f) { return fpclassify(__f); } - -_GLIBCXX_END_NAMESPACE - -// Only undefine the C99 FP macros, if actually captured for namespace movement +// These are possible macros imported from C99-land. #undef fpclassify #undef isfinite #undef isinf @@ -492,7 +481,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std) fpclassify(_Tp __f) { typedef typename __gnu_cxx::__promote<_Tp>::__type __type; - return ::__gnu_cxx::__capture_fpclassify(__type(__f)); + return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, + FP_SUBNORMAL, FP_ZERO, __type(__f)); } template<typename _Tp> |