about summary refs log tree commit diff
path: root/compiler/rustc_trait_selection/src
diff options
context:
space:
mode:
authorMichael Goulet <michael@errs.io>2024-10-14 12:40:08 -0400
committerMichael Goulet <michael@errs.io>2024-10-15 20:36:51 -0400
commit50b8029ce143aa5ed67aab9d3c05533330df97d6 (patch)
treeb775d3020bb6cf15abeb9edd8b322b166d6b0bf9 /compiler/rustc_trait_selection/src
parente7c0d2750726c1f08b1de6956248ec78c4a97af6 (diff)
downloadrust-50b8029ce143aa5ed67aab9d3c05533330df97d6.tar.gz
rust-50b8029ce143aa5ed67aab9d3c05533330df97d6.zip
Always recurse on predicates in BestObligation
Diffstat (limited to 'compiler/rustc_trait_selection/src')
-rw-r--r--compiler/rustc_trait_selection/src/solve/fulfill.rs8
1 files changed, 1 insertions, 7 deletions
diff --git a/compiler/rustc_trait_selection/src/solve/fulfill.rs b/compiler/rustc_trait_selection/src/solve/fulfill.rs
index 081d7a6a769..0e2b081448e 100644
--- a/compiler/rustc_trait_selection/src/solve/fulfill.rs
+++ b/compiler/rustc_trait_selection/src/solve/fulfill.rs
@@ -465,13 +465,7 @@ impl<'tcx> ProofTreeVisitor<'tcx> for BestObligation<'tcx> {
                     polarity: ty::PredicatePolarity::Positive,
                 }))
             }
-            ty::PredicateKind::Clause(
-                ty::ClauseKind::WellFormed(_) | ty::ClauseKind::Projection(..),
-            )
-            | ty::PredicateKind::AliasRelate(..) => ChildMode::PassThrough,
-            _ => {
-                return ControlFlow::Break(self.obligation.clone());
-            }
+            _ => ChildMode::PassThrough,
         };
 
         let mut impl_where_bound_count = 0;