On 2/6/26 2:29 AM, Haochen Jiang wrote:
On Linux/x86_64,
3f7905550483408a2c4c5096a1adc8d7e863eb12 is the first bad commit
commit 3f7905550483408a2c4c5096a1adc8d7e863eb12
Author: Nathan Myers <[email protected]>
Date: Mon Sep 22 23:52:52 2025 -0400
libstdc++: container erasure overloads (P2077) [PR117404]
caused
FAIL: g++.dg/concepts/expression.C -std=gnu++17 (test for excess errors)
with GCC configured with
../../gcc/configure
--prefix=/export/users3/haochenj/src/gcc-bisect/master/master/r16-7292/usr
--enable-clocale=gnu --with-system-zlib --with-demangler-in-ld
--with-fpmath=sse --enable-languages=c,c++,fortran --enable-cet --without-isl
--enable-libmpx x86_64-linux --disable-bootstrap
To reproduce:
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=g++.dg/concepts/expression.C
--target_board='unix{-m32}'"
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=g++.dg/concepts/expression.C
--target_board='unix{-m32\ -march=cascadelake}'"
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=g++.dg/concepts/expression.C
--target_board='unix{-m64}'"
$ cd {build_dir}/gcc && make check RUNTESTFLAGS="dg.exp=g++.dg/concepts/expression.C
--target_board='unix{-m64\ -march=cascadelake}'"
(Please directly reply to this email for question about this report.)
(If you met problems with cascadelake related, disabling AVX512F in command
line might save that.)
(However, please make sure that there is no potential problems with AVX512.)
Fixed in 786e316de5c25a3fddeaa2003f6efb64fb5ab4a9 2026-02-06 03:25:21
libstdc++: fix C++17 regression in concept __heterogeneous_key
The commit 3f7905550483408a2c4c5096a1adc8d7e863eb12 defined a
concept using a name not defined in C++17. This is fixed by
using an older name.
https://gcc.gnu.org/pipermail/gcc-patches/2026-February/707814.html
libstdc++-v3/ChangeLog
* include/bits/stl_function.h (__heterogeneous_key): Use
C++17-defined remove_cvref<>::type instead.
Nathan Myers
[email protected]