Basic name poisoning support (#4654)

https://github.com/carbon-language/carbon-lang/issues/4622
When using an unqualified name, disallow declaring that name in all
scopes that would make it ambiguous in retrospect.
Doesn't include support for poisoning in `impl library` (see new test
for that with TODO).
Implemented by introduce `InstId::PoisonedName` and entries with it to
`NameScope`.

---------

Co-authored-by: Dana Jansens <danakj@orodu.net>
Co-authored-by: Richard Smith <richard@metafoo.co.uk>
Co-authored-by: Geoff Romer <gromer@google.com>
Co-authored-by: Jon Ross-Perkins <jperkins@google.com>
Co-authored-by: josh11b <josh11b@users.noreply.github.com>
Co-authored-by: josh11b <15258583+josh11b@users.noreply.github.com>
Co-authored-by: Chandler Carruth <chandlerc@gmail.com>
Co-authored-by: Carbon Infra Bot <carbon-external-infra@google.com>
This commit is contained in:
Boaz Brickner
2024-12-17 21:08:26 +00:00
committed by GitHub
co-authored by Dana Jansens Richard Smith Geoff Romer Jon Ross-Perkins josh11b josh11b Chandler Carruth Carbon Infra Bot
parent 6b3307c520
commit 9c8773da1b
20 changed files with 1006 additions and 100 deletions
File diff suppressed because it is too large Load Diff