rust/compiler/rustc_metadata
Matthias Krüger 246d989a30
Rollup merge of #109198 - compiler-errors:new-rpitit-default-body, r=spastorino
Install projection from RPITIT to default trait method opaque correctly

1. For new lowering strategy `-Zlower-impl-trait-in-trait-to-assoc-ty`, install the correct default trait method projection predicates (RPITIT -> opaque). This makes default trait body tests pass!

2. Fix two WF-checking bugs -- first, we want to make sure that we're always looking for an opaque type in `check_return_position_impl_trait_in_trait_bounds`. That's because the RPITIT projections are normalized to opaques during wfcheck. Second, fix RPITIT's param-envs by not adding the projection predicates that we install on trait methods to make default RPITITs work -- I left a comment why.

3. Also, just a small drive-by for `rustc_on_unimplemented`. Not sure if it affects any tests, but can't hurt.

r? ````@spastorino,```` based off of #109140
2023-03-17 08:42:40 +01:00
..
src Rollup merge of #109198 - compiler-errors:new-rpitit-default-body, r=spastorino 2023-03-17 08:42:40 +01:00
Cargo.toml rustc_metadata: Encode doc(hidden) flag to metadata 2023-01-21 22:35:20 +04:00
messages.ftl Simplify message paths 2023-03-11 22:51:57 +01:00