diff options
| author | bors <bors@rust-lang.org> | 2022-08-06 06:48:15 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-08-06 06:48:15 +0000 |
| commit | bd04658eb65f0ba78ef2b275312f3311d88017cd (patch) | |
| tree | 1810260a2769071d271ad8b3b20f5daa5f75b73a /compiler/rustc_const_eval/src | |
| parent | 55f46419afd2e49acfc6be176ad4aeadaa5686d7 (diff) | |
| parent | f5af266b6d707da0f6a6cf388a93e14e38a8a1ef (diff) | |
| download | rust-bd04658eb65f0ba78ef2b275312f3311d88017cd.tar.gz rust-bd04658eb65f0ba78ef2b275312f3311d88017cd.zip | |
Auto merge of #99743 - compiler-errors:fulfillment-context-cleanups, r=jackh726
Some `FulfillmentContext`-related cleanups Use `ObligationCtxt` in some places, remove some `FulfillmentContext`s in others... r? types
Diffstat (limited to 'compiler/rustc_const_eval/src')
| -rw-r--r-- | compiler/rustc_const_eval/src/transform/check_consts/qualifs.rs | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/compiler/rustc_const_eval/src/transform/check_consts/qualifs.rs b/compiler/rustc_const_eval/src/transform/check_consts/qualifs.rs index c8a63c9c3f8..45dadcfff2e 100644 --- a/compiler/rustc_const_eval/src/transform/check_consts/qualifs.rs +++ b/compiler/rustc_const_eval/src/transform/check_consts/qualifs.rs @@ -5,12 +5,11 @@ use rustc_errors::ErrorGuaranteed; use rustc_hir::LangItem; use rustc_infer::infer::TyCtxtInferExt; -use rustc_infer::traits::TraitEngine; use rustc_middle::mir::*; use rustc_middle::ty::{self, subst::SubstsRef, AdtDef, Ty}; use rustc_span::DUMMY_SP; use rustc_trait_selection::traits::{ - self, ImplSource, Obligation, ObligationCause, SelectionContext, TraitEngineExt, + self, ImplSource, Obligation, ObligationCause, SelectionContext, }; use super::ConstCx; @@ -189,15 +188,8 @@ impl Qualif for NeedsNonConstDrop { return false; } - // If we successfully found one, then select all of the predicates - // implied by our const drop impl. - let mut fcx = <dyn TraitEngine<'tcx>>::new(cx.tcx); - for nested in impl_src.nested_obligations() { - fcx.register_predicate_obligation(&infcx, nested); - } - // If we had any errors, then it's bad - !fcx.select_all_or_error(&infcx).is_empty() + !traits::fully_solve_obligations(&infcx, impl_src.nested_obligations()).is_empty() }) } |
