mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Add a type representing a non-discriminated union of IDs. Refactor the node stack to use it. Plus a few other refactorings aiming to clean up and simplify the code. The overall goal here is that adding a new kind of ID, node category, or instruction should only require changing one place in the node stack rather than a bunch of different changes. One minor functionality change: crash backtraces now use the correct type for IDs when dumping the node stack rather than using `InstID` printing for all but one case.
Toolchain
A design is currently maintained in Google Drive. It'll be migrated to markdown once we are confident in its stability.