@@ -472,7 +472,7 @@ impl<'a, 'gcx, 'tcx> ConfirmContext<'a, 'gcx, 'tcx> {
472472 i, expr, autoderef_count) ;
473473
474474 if autoderef_count > 0 {
475- let mut autoderef = self . autoderef ( expr. span , self . expr_ty ( expr) ) ;
475+ let mut autoderef = self . autoderef ( expr. span , self . node_ty ( expr. id ) ) ;
476476 autoderef. nth ( autoderef_count) . unwrap_or_else ( || {
477477 span_bug ! ( expr. span, "expr was deref-able {} times but now isn't?" ,
478478 autoderef_count) ;
@@ -532,7 +532,7 @@ impl<'a, 'gcx, 'tcx> ConfirmContext<'a, 'gcx, 'tcx> {
532532 unsize : None
533533 } ) ) ) , false )
534534 } ;
535- let index_expr_ty = self . expr_ty ( & index_expr) ;
535+ let index_expr_ty = self . node_ty ( index_expr. id ) ;
536536
537537 let result = self . try_index_step (
538538 ty:: MethodCall :: expr ( expr. id ) ,
@@ -547,7 +547,7 @@ impl<'a, 'gcx, 'tcx> ConfirmContext<'a, 'gcx, 'tcx> {
547547 if let Some ( ( input_ty, return_ty) ) = result {
548548 self . demand_suptype ( index_expr. span , input_ty, index_expr_ty) ;
549549
550- let expr_ty = self . expr_ty ( & expr) ;
550+ let expr_ty = self . node_ty ( expr. id ) ;
551551 self . demand_suptype ( expr. span , expr_ty, return_ty) ;
552552 }
553553 }
@@ -558,7 +558,7 @@ impl<'a, 'gcx, 'tcx> ConfirmContext<'a, 'gcx, 'tcx> {
558558 if self . tables . borrow ( ) . method_map . contains_key ( & method_call) {
559559 let method = self . try_overloaded_deref ( expr. span ,
560560 Some ( & base_expr) ,
561- self . expr_ty ( & base_expr) ,
561+ self . node_ty ( base_expr. id ) ,
562562 PreferMutLvalue ) ;
563563 let method = method. expect ( "re-trying deref failed" ) ;
564564 self . tables . borrow_mut ( ) . method_map . insert ( method_call, method) ;
0 commit comments