From e32190a2283b5ca14d19416d30ed973be97203ea Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Tue, 2 Dec 2025 14:31:13 -0500 Subject: [PATCH] Stringify specifics of named constraints (#6444) --- .../check/testdata/generic/extend_type_completion.carbon | 4 ++-- toolchain/sem_ir/stringify.cpp | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/toolchain/check/testdata/generic/extend_type_completion.carbon b/toolchain/check/testdata/generic/extend_type_completion.carbon index 360657d3bdf5..75f091812dba 100644 --- a/toolchain/check/testdata/generic/extend_type_completion.carbon +++ b/toolchain/check/testdata/generic/extend_type_completion.carbon @@ -103,14 +103,14 @@ constraint J(N:! i32) { extend require impls K(array(i32, N)); } constraint I(N:! i32) { - // CHECK:STDERR: fail_constraint_extend_require_impls_does_need_complete_interface.carbon:[[@LINE+3]]:24: note: in `{}` used here [ResolvingSpecificHere] + // CHECK:STDERR: fail_constraint_extend_require_impls_does_need_complete_interface.carbon:[[@LINE+3]]:24: note: in `J(-1)` used here [ResolvingSpecificHere] // CHECK:STDERR: extend require impls J(N); // CHECK:STDERR: ^~~~ extend require impls J(N); } // I extends J extends K so the type of K is completed, but is invalid. -// CHECK:STDERR: fail_constraint_extend_require_impls_does_need_complete_interface.carbon:[[@LINE+4]]:1: note: in `{}` used here [ResolvingSpecificHere] +// CHECK:STDERR: fail_constraint_extend_require_impls_does_need_complete_interface.carbon:[[@LINE+4]]:1: note: in `I(-1)` used here [ResolvingSpecificHere] // CHECK:STDERR: var v: I(-1); // CHECK:STDERR: ^~~~~~~~~~~~ // CHECK:STDERR: diff --git a/toolchain/sem_ir/stringify.cpp b/toolchain/sem_ir/stringify.cpp index d58fe1795ddf..449f001c346b 100644 --- a/toolchain/sem_ir/stringify.cpp +++ b/toolchain/sem_ir/stringify.cpp @@ -827,6 +827,12 @@ auto StringifySpecific(const File& sem_ir, SpecificId specific_id) sem_ir.interfaces().Get(interface_decl.interface_id), specific_id); break; } + case CARBON_KIND(NamedConstraintDecl constraint_decl): { + step_stack.PushEntityName( + sem_ir.named_constraints().Get(constraint_decl.named_constraint_id), + specific_id); + break; + } case CARBON_KIND(RequireImplsDecl _): { step_stack.Push("require"); break;