[Bug c++/124297] [16 Regression] ICE in write_type_constraint, at cp/mangle.cc:913 since r16-7491
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Mar 6 22:59:47 GMT 2026
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124297
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Patrick Palka <ppalka@gcc.gnu.org>:
https://gcc.gnu.org/g:d0d3d4dde0b4712a3c39970ec8dcfe0782434d3e
commit r16-7937-gd0d3d4dde0b4712a3c39970ec8dcfe0782434d3e
Author: Patrick Palka <ppalka@redhat.com>
Date: Fri Mar 6 17:59:11 2026 -0500
c++: ICE mangling C auto... tparm [PR124297]
After r16-7491, the constraint on a C auto... tparm is represented as a
fold-expression (in TEMPLATE_PARM_CONSTRAINTS) instead of a concept-id (in
PLACEHOLDER_TYPE_CONSTRAINTS). So we now need to strip this
fold-expression
before calling write_type_constraint, like we do in the type template
parameter case a few lines below.
PR c++/124297
gcc/cp/ChangeLog:
* mangle.cc (write_template_param_decl) <case PARM_DECL>:
Strip fold-expression before calling write_type_constraint.
gcc/testsuite/ChangeLog:
* g++.dg/cpp2a/concepts-variadic4.C: New test.
Reviewed-by: Jason Merrill <jason@redhat.com>
More information about the Gcc-bugs
mailing list