summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_infer/src/infer/equate.rs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_infer/src/infer/equate.rs')
-rw-r--r--compiler/rustc_infer/src/infer/equate.rs20
1 files changed, 0 insertions, 20 deletions
diff --git a/compiler/rustc_infer/src/infer/equate.rs b/compiler/rustc_infer/src/infer/equate.rs
index 1dbab48fd..665297da2 100644
--- a/compiler/rustc_infer/src/infer/equate.rs
+++ b/compiler/rustc_infer/src/infer/equate.rs
@@ -119,26 +119,6 @@ impl<'tcx> TypeRelation<'tcx> for Equate<'_, '_, 'tcx> {
.obligations,
);
}
- // Optimization of GeneratorWitness relation since we know that all
- // free regions are replaced with bound regions during construction.
- // This greatly speeds up equating of GeneratorWitness.
- (&ty::GeneratorWitness(a_types), &ty::GeneratorWitness(b_types)) => {
- let a_types = infcx.tcx.anonymize_bound_vars(a_types);
- let b_types = infcx.tcx.anonymize_bound_vars(b_types);
- if a_types.bound_vars() == b_types.bound_vars() {
- let (a_types, b_types) = infcx.instantiate_binder_with_placeholders(
- a_types.map_bound(|a_types| (a_types, b_types.skip_binder())),
- );
- for (a, b) in std::iter::zip(a_types, b_types) {
- self.relate(a, b)?;
- }
- } else {
- return Err(ty::error::TypeError::Sorts(ty::relate::expected_found(
- self, a, b,
- )));
- }
- }
-
_ => {
self.fields.infcx.super_combine_tys(self, a, b)?;
}