https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115852
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Here is the full backtrace (godbolt's backtrace is not decent; maybe because it is stripped): <lambda(this Self&&)> auto x(Ts0&& ...) requires requires{<lambda>;} int main() <lambda(this Self&&)> constexpr<lambda(this Self&&)>::operator decltype (<lambda(this Self&&)>(static_cast<Self&&>(<anonymous>))) (*)(Self&&)() const t.cc: In substitution of ‘template<class ... Ts0> auto x(Ts0&& ...) requires requires{<lambda>;} [with Ts0 = {int}]’: t.cc:13:13: required from here 13 | return x(1); | ~^~~ t.cc:5:5: internal compiler error: in satisfy_declaration_constraints, at cp/constraint.cc:3290 5 | []<class Self>(this Self&&) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6 | | 7 | }; | ~ 0x272f0cd internal_error(char const*, ...) /home/apinski/src/upstream-gcc-new/gcc/gcc/diagnostic-global-context.cc:491 0xa475a5 fancy_abort(char const*, int, char const*) /home/apinski/src/upstream-gcc-new/gcc/gcc/diagnostic.cc:1725 0x770ac3 satisfy_declaration_constraints /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:3290 0x770ac3 constraint_satisfaction_value /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:3408 0xac0ed3 constraints_satisfied_p(tree_node*, tree_node*) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:3443 0xb3e914 mark_used(tree_node*, int) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/decl2.cc:5986 0xb3faf2 mark_single_function(tree_node*, int) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/decl2.cc:5852 0xd1683d cp_build_addr_expr_1 /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/typeck.cc:7324 0xb6f595 maybe_add_lambda_conv_op(tree_node*) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/lambda.cc:1321 0xca3348 tsubst_lambda_expr(tree_node*, tree_node*, int, tree_node*) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/pt.cc:19897 0xc7f4b1 tsubst_expr(tree_node*, tree_node*, int, tree_node*) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/pt.cc:21787 0xab72f8 tsubst_valid_expression_requirement /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:1995 0xabed6e tsubst_simple_requirement /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:2029 0xabed6e tsubst_requirement /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:2244 0xabed6e tsubst_requires_expr /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:2384 0xabf45a tsubst_requires_expr(tree_node*, tree_node*, int, tree_node*) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:2408 0xc7d953 tsubst_expr(tree_node*, tree_node*, int, tree_node*) /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/pt.cc:21819 0xac0851 satisfy_atom /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:3074 0xac0851 satisfy_constraint_r /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:3139 0xac0d90 satisfy_normalized_constraints /home/apinski/src/upstream-gcc-new/gcc/gcc/cp/constraint.cc:3164 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.