https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113966
--- Comment #5 from Marek Polacek <mpolacek at gcc dot gnu.org> --- /* Check any placeholder constraints against the deduced type. */ if (processing_template_decl && context == adc_unify) /* Constraints will be checked after deduction. */; else if (tree constr = NON_ERROR (PLACEHOLDER_TYPE_CONSTRAINTS (auto_node))) { if (processing_template_decl) { gcc_checking_assert (context == adc_variable_type || context == adc_return_type || context == adc_decomp_type); (gdb) p context $2 = adc_requirement Maybe we just have to allow adc_requirement in the assert?