rust/compiler/rustc_middle
bors 2e4e2a8f28 Auto merge of #117139 - compiler-errors:vid-lifetimes, r=BoxyUwU
Get rid of `'tcx` lifetime on `ConstVid`, `EffectVid`

These are simply newtyped numbers, so don't really have a reason (per se) to have a lifetime -- `TyVid` and `RegionVid` do not, for example.

The only consequence of this is that we need to use a new key type for `UnifyKey` that mentions `'tcx`. This is already done for `RegionVid`, with `RegionVidKey<'tcx>`, but this `UnifyKey` trait implementation may have been the original reason to give `ConstVid` a lifetime. See the changes to `compiler/rustc_middle/src/infer/unify_key.rs` specifically.

I consider the code cleaner this way, though -- we removed quite a few unnecessary `'tcx` in the process. This also makes it easier to uplift these two ids to `rustc_type_ir`, which I plan on doing in a follow-up PR.

r? `@BoxyUwU`
2023-10-25 02:01:04 +00:00
..
src Auto merge of #117139 - compiler-errors:vid-lifetimes, r=BoxyUwU 2023-10-25 02:01:04 +00:00
Cargo.toml Replace in-tree rustc_apfloat with the new version of the crate 2023-07-26 10:20:15 -04:00
messages.ftl s/generator/coroutine/ 2023-10-20 21:14:01 +00:00
README.md

For more information about how rustc works, see the rustc dev guide.