diff options
author | Gabriel Dos Reis <gdr@codesourcery.com> | 2001-05-24 18:38:20 +0000 |
---|---|---|
committer | Gabriel Dos Reis <gdr@gcc.gnu.org> | 2001-05-24 18:38:20 +0000 |
commit | cf3e18dd1e39b7f21fe7769e0609bde8e9af3701 (patch) | |
tree | 888ee035d9929571a72567472035e90b36eb4952 | |
parent | cb894e07ec764859e793baf8ff7487a83a3557cc (diff) | |
download | gcc-cf3e18dd1e39b7f21fe7769e0609bde8e9af3701.zip gcc-cf3e18dd1e39b7f21fe7769e0609bde8e9af3701.tar.gz gcc-cf3e18dd1e39b7f21fe7769e0609bde8e9af3701.tar.bz2 |
c++config (__NO_MATH_INLINES): New macro.
* include/bits/c++config (__NO_MATH_INLINES): New macro.
* testsuite/26_numerics/fabs_inline.cc (main): New test.
From-SVN: r42533
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/c++config | 5 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/26_numerics/fabs_inline.cc | 37 |
3 files changed, 47 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index fe5bdc3..70ce13e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2001-05-24 Gabriel Dos Reis <gdr@codesourcery.com> + + * include/bits/c++config (__NO_MATH_INLINES): New macro. + * testsuite/26_numerics/fabs_inline.cc (main): New test. + 2001-05-22 Benjamin Kosnik <bkoz@redhat.com> libstdc++/2841 diff --git a/libstdc++-v3/include/bits/c++config b/libstdc++-v3/include/bits/c++config index f87f58e..bd9c55c 100644 --- a/libstdc++-v3/include/bits/c++config +++ b/libstdc++-v3/include/bits/c++config @@ -33,6 +33,11 @@ // Pick up any OS-specific definitions. #include <bits/os_defines.h> +// Tell Glibc not to try to provide its own inline versions of +// some math functions. Those cause assembly-time clashes with +// our definitions. +#define __NO_MATH_INLINES + // The current version of the C++ library in compressed ISO date format. #define __GLIBCPP__ 20010517 diff --git a/libstdc++-v3/testsuite/26_numerics/fabs_inline.cc b/libstdc++-v3/testsuite/26_numerics/fabs_inline.cc new file mode 100644 index 0000000..bb84a58 --- /dev/null +++ b/libstdc++-v3/testsuite/26_numerics/fabs_inline.cc @@ -0,0 +1,37 @@ +// Copyright (C) 1999 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 2, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING. If not, write to the Free +// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, +// USA. + +// Test to see whether the host provides its own (inline) view of fabs. +// Origin: Kurt Garloff <kurt@garloff.de>, 2001-05-24 +// dg-do link + +#include <cmath> +#include <cstdio> + +typedef double (*realfn) (double); + +using std::fabs; + +int main () +{ + double a = fabs (-2.4); + realfn myfn = fabs; + double b = myfn (-2.5); + printf ("%f, %f, %p\n", a, b, myfn); + return 0; +} |