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
This commit is contained in:
Gabriel Dos Reis 2001-05-24 18:38:20 +00:00 committed by Gabriel Dos Reis
parent cb894e07ec
commit cf3e18dd1e
3 changed files with 47 additions and 0 deletions

View 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

View File

@ -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

View File

@ -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;
}