diff options
| author | David Wood <david.wood2@arm.com> | 2025-07-16 10:56:32 +0000 |
|---|---|---|
| committer | David Wood <david.wood2@arm.com> | 2025-07-16 12:35:44 +0000 |
| commit | 8d64937dc25eb2b01596a3581ec2660d8e81b9b2 (patch) | |
| tree | ee2685eb032b86df31c526b100c2acbac5ca54e4 /compiler/rustc_trait_selection/src/traits/util.rs | |
| parent | 231257f583c6e782da2e642ad007fca4e76779d6 (diff) | |
| download | rust-8d64937dc25eb2b01596a3581ec2660d8e81b9b2.tar.gz rust-8d64937dc25eb2b01596a3581ec2660d8e81b9b2.zip | |
trait_sel: `MetaSized` always holds temporarily
As a temporary measure while a proper fix for `tests/ui/sized-hierarchy/incomplete-inference-issue-143992.rs` is implemented, make `MetaSized` obligations always hold. In effect, temporarily reverting the `sized_hierarchy` feature. This is a small change that can be backported.
Diffstat (limited to 'compiler/rustc_trait_selection/src/traits/util.rs')
| -rw-r--r-- | compiler/rustc_trait_selection/src/traits/util.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/rustc_trait_selection/src/traits/util.rs b/compiler/rustc_trait_selection/src/traits/util.rs index 141454bfe37..00e31021eec 100644 --- a/compiler/rustc_trait_selection/src/traits/util.rs +++ b/compiler/rustc_trait_selection/src/traits/util.rs @@ -378,6 +378,13 @@ pub fn sizedness_fast_path<'tcx>(tcx: TyCtxt<'tcx>, predicate: ty::Predicate<'tc _ => return false, }; + // FIXME(sized_hierarchy): this temporarily reverts the `sized_hierarchy` feature + // while a proper fix for `tests/ui/sized-hierarchy/incomplete-inference-issue-143992.rs` + // is pending a proper fix + if !tcx.features().sized_hierarchy() && matches!(sizedness, SizedTraitKind::MetaSized) { + return true; + } + if trait_pred.self_ty().has_trivial_sizedness(tcx, sizedness) { debug!("fast path -- trivial sizedness"); return true; |
