https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113961
Bug ID: 113961 Summary: [14 regression] 26_numerics/random/pr60037-neg.cc fails in new place after r14-9028-g7f3d900684ad98 Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: seurer at gcc dot gnu.org Target Milestone: --- g:7f3d900684ad989164114f25eb46a33871c6533d, r14-9028-g7f3d900684ad98 make -k check RUNTESTFLAGS="conformance.exp=26_numerics/random/pr60037-neg.cc" FAIL: 26_numerics/random/pr60037-neg.cc -std=gnu++17 (test for errors, line 3350) FAIL: 26_numerics/random/pr60037-neg.cc -std=gnu++17 (test for excess errors) commit 7f3d900684ad989164114f25eb46a33871c6533d (HEAD) Author: Jonathan Wakely <jwak...@redhat.com> Date: Wed Feb 7 11:31:10 2024 +0000 libstdc++: Fix FAIL: 26_numerics/random/pr60037-neg.cc [PR113931] This commit fixed the previous error in pr60037-neg.cc but caused a new one. In file included from /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/random:48,^M from /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/powerpc64le-unknown-linux-gnu/bits/stdc++.h:179,^M from <command-line>:^M /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/random.h: In instantiation of 'struct std::__detail::_Adaptor<std::mersenne_twister_engine<long unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>, long unsigned int>':^M /home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/26_numerics/random/pr60037-neg.cc:8: required from here^M /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:270: error: static assertion failed: template argument must be a floating point type^M /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:270: note: 'std::integral_constant<bool, false>::value' evaluates to false^M In file included from /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/random:50:^M /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc: In instantiation of '_RealType std::generate_canonical(_UniformRandomNumberGenerator&) [with _RealType = long unsigned int; long unsigned int __bits = 64; _UniformRandomNumberGenerator = mersenne_twister_engine<long unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>]':^M /home/seurer/gcc/git/gcc-test/libstdc++-v3/testsuite/26_numerics/random/pr60037-neg.cc:11: required from here^M /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:3351: error: static assertion failed: template argument must be a floating point type^M /home/seurer/gcc/git/build/gcc-test/powerpc64le-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:3351: note: 'std::integral_constant<bool, false>::value' evaluates to false^M compiler exited with status 1 PASS: 26_numerics/random/pr60037-neg.cc -std=gnu++17 (test for errors, line 270) FAIL: 26_numerics/random/pr60037-neg.cc -std=gnu++17 (test for errors, line 3350)