Skip to content

Commit e390acd

Browse files
committed
Use expr_ty_adjusted in convert_place_op_to_mutable
1 parent 4710f85 commit e390acd

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

src/librustc_typeck/check/reconciliation.rs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -89,17 +89,14 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
8989
return;
9090
}
9191

92+
// Need to deref because overloaded place ops take self by-reference.
9293
let base_ty = self
9394
.tables
9495
.borrow()
95-
.expr_adjustments(base_expr)
96-
.last()
97-
.map_or_else(|| self.node_ty(expr.hir_id), |adj| adj.target);
98-
let base_ty = self.resolve_vars_if_possible(&base_ty);
99-
100-
// Need to deref because overloaded place ops take self by-reference.
101-
let base_ty =
102-
base_ty.builtin_deref(false).expect("place op takes something that is not a ref").ty;
96+
.expr_ty_adjusted(base_expr)
97+
.builtin_deref(false)
98+
.expect("place op takes something that is not a ref")
99+
.ty;
103100

104101
let method = self.try_overloaded_place_op(expr.span, base_ty, arg_tys, Needs::MutPlace, op);
105102
let method = match method {

0 commit comments

Comments
 (0)