From 9df35a5050e49b17bae559a074cb30798f8ca6da Mon Sep 17 00:00:00 2001 From: Boxy Date: Fri, 17 Mar 2023 14:40:16 +0000 Subject: [PATCH] fix bad assertion --- .../rustc_trait_selection/src/solve/canonical/mod.rs | 7 ------- compiler/rustc_trait_selection/src/solve/mod.rs | 10 ++++------ 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/compiler/rustc_trait_selection/src/solve/canonical/mod.rs b/compiler/rustc_trait_selection/src/solve/canonical/mod.rs index 01a011a000ef..9d45e78ebab0 100644 --- a/compiler/rustc_trait_selection/src/solve/canonical/mod.rs +++ b/compiler/rustc_trait_selection/src/solve/canonical/mod.rs @@ -55,13 +55,6 @@ impl<'tcx> EvalCtxt<'_, 'tcx> { let goals_certainty = self.try_evaluate_added_goals()?; let certainty = certainty.unify_and(goals_certainty); - if let Certainty::Yes = certainty { - assert!( - self.nested_goals.is_empty(), - "Cannot be certain of query response if unevaluated goals exist" - ); - } - let external_constraints = self.compute_external_query_constraints()?; let response = Response { var_values: self.var_values, external_constraints, certainty }; diff --git a/compiler/rustc_trait_selection/src/solve/mod.rs b/compiler/rustc_trait_selection/src/solve/mod.rs index 13d6602b7e12..5986b40d9a98 100644 --- a/compiler/rustc_trait_selection/src/solve/mod.rs +++ b/compiler/rustc_trait_selection/src/solve/mod.rs @@ -88,12 +88,10 @@ impl<'tcx> InferCtxtEvalExt<'tcx> for InferCtxt<'tcx> { }; let result = ecx.evaluate_goal(IsNormalizesToHack::No, goal); - if let Ok((_, Certainty::Yes)) = result { - assert!( - ecx.nested_goals.is_empty(), - "Cannot be certain of query response if unevaluated goals exist" - ); - } + assert!( + ecx.nested_goals.is_empty(), + "root `EvalCtxt` should not have any goals added to it" + ); assert!(search_graph.is_empty()); result