rust/compiler/rustc_metadata/src
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
..
rmeta Rollup merge of #109198 - compiler-errors:new-rpitit-default-body, r=spastorino 2023-03-17 08:42:40 +01:00
creader.rs metadata/resolve: Minor refactoring to "tcx -> cstore" conversions 2023-03-13 17:31:55 +04:00
dependency_format.rs Replace enum ==s with matches where it makes sense 2023-01-30 12:26:26 +00:00
errors.rs errors: generate typed identifiers in each crate 2023-02-22 09:15:53 +00:00
foreign_modules.rs Rename some OwnerId fields. 2022-10-29 20:28:38 +11:00
fs.rs Only compute the crate hash when necessary. 2023-03-08 09:30:22 +11:00
lib.rs Simplify message paths 2023-03-11 22:51:57 +01:00
locator.rs Replace u32_len with constant 2023-02-20 13:38:29 -05:00
native_libs.rs Rollup merge of #107675 - jsgf:link-directives, r=davidtwco 2023-02-25 11:53:09 -08:00