https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97052
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-10 branch has been updated by Patrick Palka <ppa...@gcc.gnu.org>: https://gcc.gnu.org/g:ebb734aac092cc1ea1208b3a96cc2b6ad85cf5a1 commit r10-9735-gebb734aac092cc1ea1208b3a96cc2b6ad85cf5a1 Author: Patrick Palka <ppa...@redhat.com> Date: Tue Apr 20 12:06:37 2021 -0400 c++: ICE in dependent_type_p with constrained auto [PR97052] This patch fixes an "unguarded" call to coerce_template_parms in build_standard_check: processing_template_decl could be zero if we get here during processing of the first 'auto' parameter of an abbreviated function template, or if we're processing the type constraint of a non-templated variable. In the testcase below, this leads to an ICE when coerce_template_parms instantiates C's dependent default template argument. gcc/cp/ChangeLog: PR c++/97052 * constraint.cc (build_type_constraint): Temporarily increment processing_template_decl before calling build_concept_check. * pt.c (make_constrained_placeholder_type): Likewise. gcc/testsuite/ChangeLog: PR c++/97052 * g++.dg/cpp2a/concepts-defarg2.C: New test. (cherry picked from commit c1c62aec6751678e958ab5c61b2d903a09d7efd9)