https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112593
--- Comment #3 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> --- > --- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- > (In reply to Rainer Orth from comment #1) >> The test also FAILs on Solaris 11.4, both sparc and x86, 32 and 64-bit. >> However, >> the failure mode is different: >> >> /vol/gcc/src/hg/master/local/libstdc++-v3/testsuite/26_numerics/headers/ >> cmath/equivalent_functions.cc:120: void test_float_overload(): Assertion >> 'std::asin(x) == std::asinf(x)' failed. > > That looks like a similar problem though. std::asin(float) probably calls > std::__asinf, which apparently gives a different result to ::asinf. the strange thing is: running $ dis -F _Z19test_float_overloadv equivalent_functions.exe I find only a call to __asinf, nothing else. > If you comment out the call to test_float_overload() in main, it might fail at > the same place in test_long_double_overload (or maybe somewhere else!) Right, it's the same /vol/gcc/src/hg/master/local/libstdc++-v3/testsuite/26_numerics/headers/cmath/equivalent_functions.cc:199: void test_long_double_overload(): Assertion 'std::cosh(x) == std::coshl(x)' failed. that you saw on S11.3. Again, only __coshl called in there.