minor: don't drop binders when doing autoderef
This commit is contained in:
@@ -2504,8 +2504,7 @@ impl Type {
|
|||||||
|
|
||||||
pub fn autoderef<'a>(&'a self, db: &'a dyn HirDatabase) -> impl Iterator<Item = Type> + 'a {
|
pub fn autoderef<'a>(&'a self, db: &'a dyn HirDatabase) -> impl Iterator<Item = Type> + 'a {
|
||||||
// There should be no inference vars in types passed here
|
// There should be no inference vars in types passed here
|
||||||
let ty = hir_ty::replace_errors_with_variables(&self.ty).value;
|
let canonical = hir_ty::replace_errors_with_variables(&self.ty);
|
||||||
let canonical = Canonical { value: ty, binders: CanonicalVarKinds::empty(&Interner) };
|
|
||||||
let environment = self.env.env.clone();
|
let environment = self.env.env.clone();
|
||||||
let ty = InEnvironment { goal: canonical, environment };
|
let ty = InEnvironment { goal: canonical, environment };
|
||||||
autoderef(db, Some(self.krate), ty)
|
autoderef(db, Some(self.krate), ty)
|
||||||
|
|||||||
Reference in New Issue
Block a user