// Copyright (C) 2020-2024 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 // . // only: float|double|ldouble * * * // expensive: * [1-9] * * #include "bits/main.h" template void test() { vir::test::setFuzzyness(1); vir::test::setFuzzyness(1); using T = typename V::value_type; test_values( { #ifdef __STDC_IEC_559__ std::__quiet_NaN_v, std::__infinity_v, -std::__infinity_v, -0., std::__denorm_min_v, std::__norm_min_v / 3, #endif +0., std::__norm_min_v, std::__finite_max_v}, {10000}, MAKE_TESTER(acos), MAKE_TESTER(tan), MAKE_TESTER(acosh), MAKE_TESTER(asinh), MAKE_TESTER(atanh), MAKE_TESTER(cosh), MAKE_TESTER(sinh), MAKE_TESTER(tanh)); }