diff options
| author | bors <bors@rust-lang.org> | 2024-02-08 16:42:56 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-02-08 16:42:56 +0000 |
| commit | c29082fe7dc6e902169cacbae165562a7e4a1fd6 (patch) | |
| tree | 94009b46d57efb54585203477f02e0661ab3c8b7 /compiler/rustc_resolve/src | |
| parent | 1280928a99ad3ef2c5735b42dc8852456ae3b974 (diff) | |
| parent | f867742be8a19ca253b0d7d1c9a4ab54b7ff02c5 (diff) | |
| download | rust-c29082fe7dc6e902169cacbae165562a7e4a1fd6.tar.gz rust-c29082fe7dc6e902169cacbae165562a7e4a1fd6.zip | |
Auto merge of #120544 - BoxyUwU:enter_forall, r=lcnr
Introduce `enter_forall` to supercede `instantiate_binder_with_placeholders` r? `@lcnr` Long term we'd like to experiment with decrementing the universe count after "exiting" binders so that we do not end up creating infer vars in non-root universes even when they logically reside in the root universe. The fact that we dont do this currently results in a number of issues in the new trait solver where we consider goals to be ambiguous because otherwise it would require lowering the universe of an infer var. i.e. the goal `?x.0 eq <T as Trait<?y.1>>::Assoc` where the alias is rigid would not be able to instantiate `?x` with the alias as there would be a universe error. This PR is the first-ish sort of step towards being able to implement this as eventually we would want to decrement the universe in `enter_forall`. Unfortunately its Difficult to actually implement decrementing universes nicely so this is a separate step which moves us closer to the long term goal :sparkles:
Diffstat (limited to 'compiler/rustc_resolve/src')
0 files changed, 0 insertions, 0 deletions
