Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/infer/opaques.rs')
-rw-r--r--crates/hir-ty/src/infer/opaques.rs13
1 files changed, 7 insertions, 6 deletions
diff --git a/crates/hir-ty/src/infer/opaques.rs b/crates/hir-ty/src/infer/opaques.rs
index f7719f50ac..a39288721b 100644
--- a/crates/hir-ty/src/infer/opaques.rs
+++ b/crates/hir-ty/src/infer/opaques.rs
@@ -109,15 +109,15 @@ impl<'db> InferenceContext<'_, 'db> {
let expected =
EarlyBinder::bind(ty.ty).instantiate(interner, opaque_type_key.args);
- self.demand_eqtype(expected, hidden_type.ty);
+ _ = self.demand_eqtype_fixme_no_diag(expected, hidden_type.ty);
}
- self.result.type_of_opaque.insert(def_id, ty.ty);
+ self.result.type_of_opaque.insert(def_id, ty.ty.store());
continue;
}
- self.result.type_of_opaque.insert(def_id, self.types.error);
+ self.result.type_of_opaque.insert(def_id, self.types.types.error.store());
}
}
@@ -136,12 +136,13 @@ impl<'db> InferenceContext<'_, 'db> {
}
let cause = ObligationCause::new();
- let at = self.table.infer_ctxt.at(&cause, self.table.trait_env.env);
+ let at = self.table.infer_ctxt.at(&cause, self.table.param_env);
let hidden_type = match at.deeply_normalize(hidden_type) {
Ok(hidden_type) => hidden_type,
- Err(_errors) => OpaqueHiddenType { ty: self.types.error },
+ Err(_errors) => OpaqueHiddenType { ty: self.types.types.error },
};
- let hidden_type = fold_regions(self.interner(), hidden_type, |_, _| self.types.re_erased);
+ let hidden_type =
+ fold_regions(self.interner(), hidden_type, |_, _| self.types.regions.erased);
UsageKind::HasDefiningUse(hidden_type)
}
}