-   Notifications  
You must be signed in to change notification settings  - Fork 13.9k
 
split definition and use site hidden tys #148170
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|   Some changes occurred in exhaustiveness checking cc @Nadrieril  |  
| for hidden_ty in fcx_typeck_results.hidden_types.values() { | ||
| assert!(!hidden_ty.has_infer()); | ||
| } | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ideally this is just an assert in EarlyBinder::bind. Adding that is more annoying than I expected as we need to do some lifetime dependent shit in some of the query system stuff which relies on transmutes. nm, actually just gonna do that in this PR as well
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
also ass because we create ty::EarlyBinder<'tcx, impl IntoIterator<Item = ty::Binder<'tcx, ty::TraitRef<'tcx>>>> sometimes. An early binder of an iterator :x
|   ☔ The latest upstream changes (presumably #148220) made this pull request unmergeable. Please resolve the merge conflicts.  |  
cd5dc48 to 3a6ab3f   Compare      This comment has been minimized. 
   
 This comment has been minimized.
| let ty = match defining_scope_kind { | ||
| DefiningScopeKind::HirTypeck => { | ||
| fold_regions(tcx, self.ty, |_, _| tcx.lifetimes.re_erased) | ||
| } | ||
| DefiningScopeKind::MirBorrowck => self.ty, | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rustfmt went out of its way to make a match arm bigger just because it had more space? wut
| location_map: Rc<DenseLocationMap>, | ||
| hidden_types: &mut DefinitionSiteHiddenTypes<'tcx>, | ||
| hidden_types: &mut FxIndexMap<LocalDefId, ty::DefinitionSiteHiddenType<'tcx>>, | ||
| opaque_types: &[(OpaqueTypeKey<'tcx>, OpaqueHiddenType<'tcx>)], | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should rename OpaqueHiddenType to ProvisionHiddenType so that its always clear that there are two "kinds" of hidden types.
3a6ab3f to 5cbb5d0   Compare   |   This PR was rebased onto a different master commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.  |  
|   @bors r+  |  
split definition and use site hidden tys Tracking this implicitly is kinda messy and easy to get wrong. r? `@BoxyUwU`
|   💔 Test failed - checks-actions  |  
|   Looks like a CI runner flaked out. @bors retry  |  
split definition and use site hidden tys Tracking this implicitly is kinda messy and easy to get wrong. r? `@BoxyUwU`
split definition and use site hidden tys Tracking this implicitly is kinda messy and easy to get wrong. r? `@BoxyUwU`
|   Yielding to enclosing rollup. @bors retry  |  
Rollup of 9 pull requests Successful merges: - #147947 (Implement `strip_circumfix` lib feature) - #148170 (split definition and use site hidden tys) - #148194 (compiletest: Remove `cleanup_debug_info_options`) - #148199 (compiletest: Don't modify `testpaths` when creating aux contexts) - #148240 (rustc_codegen: fix musttail returns for cast/indirect ABIs) - #148290 (Do not emit solver errors that contain error types) - #148357 (temporary-lifetime-extension.rs test works in all editions) - #148362 (docs: makes a note about possible building `rustc 1.91.0 + host tools` for win7) - #148367 (Use --print host-tuple to get the host) r? `@ghost` `@rustbot` modify labels: rollup
split definition and use site hidden tys Tracking this implicitly is kinda messy and easy to get wrong. r? `@BoxyUwU`
Rollup of 8 pull requests Successful merges: - #148170 (split definition and use site hidden tys) - #148194 (compiletest: Remove `cleanup_debug_info_options`) - #148199 (compiletest: Don't modify `testpaths` when creating aux contexts) - #148290 (Do not emit solver errors that contain error types) - #148357 (temporary-lifetime-extension.rs test works in all editions) - #148362 (docs: makes a note about possible building `rustc 1.91.0 + host tools` for win7) - #148367 (Use --print host-tuple to get the host) - #148374 (miri subtree update) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of #148170 - lcnr:opaques-early-binder, r=BoxyUwU split definition and use site hidden tys Tracking this implicitly is kinda messy and easy to get wrong. r? ``@BoxyUwU``
Rollup of 8 pull requests Successful merges: - rust-lang/rust#148170 (split definition and use site hidden tys) - rust-lang/rust#148194 (compiletest: Remove `cleanup_debug_info_options`) - rust-lang/rust#148199 (compiletest: Don't modify `testpaths` when creating aux contexts) - rust-lang/rust#148290 (Do not emit solver errors that contain error types) - rust-lang/rust#148357 (temporary-lifetime-extension.rs test works in all editions) - rust-lang/rust#148362 (docs: makes a note about possible building `rustc 1.91.0 + host tools` for win7) - rust-lang/rust#148367 (Use --print host-tuple to get the host) - rust-lang/rust#148374 (miri subtree update) r? `@ghost` `@rustbot` modify labels: rollup
Tracking this implicitly is kinda messy and easy to get wrong.
r? @BoxyUwU