Poison impl lookup queries with concrete results (#5373)

Once a concrete result has been found, it's not legal to write an `impl`
that would change the concrete result afterward.

---------

Co-authored-by: Richard Smith <richard@metafoo.co.uk>
This commit is contained in:
Dana Jansens
2025-04-29 21:55:11 +00:00
committed by GitHub
co-authored by Richard Smith
parent bd99b74608
commit 13da710e94
13 changed files with 285 additions and 13 deletions
+9
View File
@@ -25,6 +25,15 @@ auto StringifyConstantInst(const File& sem_ir, InstId outer_inst_id)
auto StringifySpecific(const File& sem_ir, SpecificId specific_id)
-> std::string;
// Produces a string version of the name of a specific interface. If the
// interface is not generic, this is just the name of the interface. Otheewise,
// it is the interface name and its generic arguments. Generally, this should
// not be called directly. To format a string into a diagnostic, use a
// diagnostic parameter of type `SpecificInterface`.
auto StringifySpecificInterface(const File& sem_ir,
SpecificInterface specific_interface)
-> std::string;
} // namespace Carbon::SemIR
#endif // CARBON_TOOLCHAIN_SEM_IR_STRINGIFY_H_