diff options
| author | lcnr <rust@lcnr.de> | 2023-03-21 16:34:04 +0100 |
|---|---|---|
| committer | lcnr <rust@lcnr.de> | 2023-03-21 16:34:04 +0100 |
| commit | 938434ab82609c8de83028fa80bde4d6d28c282a (patch) | |
| tree | a55793a70afa69f1b163ef6bb443dcc3c68152c5 /compiler/rustc_trait_selection/src/traits | |
| parent | 47f24a881bb05293c4d922218d9dfed7e29511cd (diff) | |
| download | rust-938434ab82609c8de83028fa80bde4d6d28c282a.tar.gz rust-938434ab82609c8de83028fa80bde4d6d28c282a.zip | |
enable `intercrate` in the solver `InferCtxt`
Diffstat (limited to 'compiler/rustc_trait_selection/src/traits')
| -rw-r--r-- | compiler/rustc_trait_selection/src/traits/coherence.rs | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/compiler/rustc_trait_selection/src/traits/coherence.rs b/compiler/rustc_trait_selection/src/traits/coherence.rs index f4cfe4ec0b0..5bb0cdda1af 100644 --- a/compiler/rustc_trait_selection/src/traits/coherence.rs +++ b/compiler/rustc_trait_selection/src/traits/coherence.rs @@ -95,8 +95,11 @@ pub fn overlapping_impls( return None; } - let infcx = - tcx.infer_ctxt().with_opaque_type_inference(DefiningAnchor::Bubble).intercrate().build(); + let infcx = tcx + .infer_ctxt() + .with_opaque_type_inference(DefiningAnchor::Bubble) + .intercrate(true) + .build(); let selcx = &mut SelectionContext::new(&infcx); let overlaps = overlap(selcx, skip_leak_check, impl1_def_id, impl2_def_id, overlap_mode).is_some(); @@ -107,8 +110,11 @@ pub fn overlapping_impls( // In the case where we detect an error, run the check again, but // this time tracking intercrate ambiguity causes for better // diagnostics. (These take time and can lead to false errors.) - let infcx = - tcx.infer_ctxt().with_opaque_type_inference(DefiningAnchor::Bubble).intercrate().build(); + let infcx = tcx + .infer_ctxt() + .with_opaque_type_inference(DefiningAnchor::Bubble) + .intercrate(true) + .build(); let selcx = &mut SelectionContext::new(&infcx); selcx.enable_tracking_intercrate_ambiguity_causes(); Some(overlap(selcx, skip_leak_check, impl1_def_id, impl2_def_id, overlap_mode).unwrap()) |
