Un-split hypot<long double> tests

Remove the hypot-long-double.cc file that used dg-xfail-run-if and
simply use the lower tolerance for double if long double is not larger
than double.

	* testsuite/26_numerics/headers/cmath/hypot-long-double.cc: Remove.
	* testsuite/26_numerics/headers/cmath/hypot.cc: Restore test for
	long double unconditionally, but use lower tolerance when
	sizeof(long double) == sizeof(double).

From-SVN: r264483
This commit is contained in:
Jonathan Wakely 2018-09-21 16:36:53 +01:00 committed by Jonathan Wakely
parent c8d1534ec9
commit ac51f07ad2
3 changed files with 11 additions and 30 deletions

View File

@ -1,3 +1,10 @@
2018-09-21 Jonathan Wakely <jwakely@redhat.com>
* testsuite/26_numerics/headers/cmath/hypot-long-double.cc: Remove.
* testsuite/26_numerics/headers/cmath/hypot.cc: Restore test for
long double unconditionally, but use lower tolerance when
sizeof(long double) == sizeof(double).
2018-09-20 Christophe Lyon <christophe.lyon@linaro.org>
* testsuite/26_numerics/headers/cmath/hypot-long-double.cc: Skip

View File

@ -1,25 +0,0 @@
// Copyright (C) 2016-2018 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 3, 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 COPYING3. If not see
// <http://www.gnu.org/licenses/>.
// { dg-options "-std=gnu++17" }
// { dg-do run { target c++17 } }
// { dg-xfail-run-if "PR 78179" { arm*-*-* hppa-*-linux* nios2-*-* powerpc-ibm-aix* } }
// Run the long double tests from hypot.cc separately, because they fail on a
// number of targets. See PR libstdc++/78179 for details.
#define TEST_HYPOT_LONG_DOUBLE
#include "hypot.cc"

View File

@ -125,13 +125,12 @@ const long double toler3 = 1e-16l;
void
test01()
{
// See hypot-long-double.cc for this macro
#ifndef TEST_HYPOT_LONG_DOUBLE
test(data1, toler1);
test(data2, toler2);
#else
test(data3, toler3);
#endif
if (sizeof(long double) > sizeof(double))
test(data3, toler3);
else
test(data3, (long double)toler1);
}
int