OSDN Git Service

* include/bits/c++config (__NO_MATH_INLINES): New macro.
authorgdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 24 May 2001 18:38:20 +0000 (18:38 +0000)
committergdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 24 May 2001 18:38:20 +0000 (18:38 +0000)
      * testsuite/26_numerics/fabs_inline.cc (main): New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42533 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/c++config
libstdc++-v3/testsuite/26_numerics/fabs_inline.cc [new file with mode: 0644]

index fe5bdc3..70ce13e 100644 (file)
@@ -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
index f87f58e..bd9c55c 100644 (file)
 // 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 (file)
index 0000000..bb84a58
--- /dev/null
@@ -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;
+}