@@ -234,7 +234,7 @@ impl<'d,'t,TYPER:mc::Typer> ExprUseVisitor<'d,'t,TYPER> {
234
234
decl : & ast:: FnDecl ,
235
235
body : & ast:: Block ) {
236
236
for arg in decl. inputs . iter ( ) {
237
- let arg_ty = ty :: node_id_to_type ( self . tcx ( ) , arg. pat . id ) ;
237
+ let arg_ty = return_if_err ! ( self . typer . node_ty ( arg. pat. id) ) ;
238
238
239
239
let arg_cmt = self . mc . cat_rvalue (
240
240
arg. id ,
@@ -414,7 +414,7 @@ impl<'d,'t,TYPER:mc::Typer> ExprUseVisitor<'d,'t,TYPER> {
414
414
415
415
// Fetch the type of the value that the iteration yields to
416
416
// produce the pattern's categorized mutable type.
417
- let pattern_type = ty :: node_id_to_type ( self . tcx ( ) , pat. id ) ;
417
+ let pattern_type = return_if_err ! ( self . typer . node_ty ( pat. id) ) ;
418
418
let pat_cmt = self . mc . cat_rvalue ( pat. id ,
419
419
pat. span ,
420
420
ty:: ReScope ( blk. id ) ,
@@ -828,7 +828,7 @@ impl<'d,'t,TYPER:mc::Typer> ExprUseVisitor<'d,'t,TYPER> {
828
828
pat. repr( tcx) ) ;
829
829
830
830
// pat_ty: the type of the binding being produced.
831
- let pat_ty = ty :: node_id_to_type ( tcx , pat. id) ;
831
+ let pat_ty = return_if_err! ( typer . node_ty ( pat. id) ) ;
832
832
833
833
// Each match binding is effectively an assignment to the
834
834
// binding being produced.
@@ -971,7 +971,7 @@ impl<'d,'t,TYPER:mc::Typer> ExprUseVisitor<'d,'t,TYPER> {
971
971
// Create the cmt for the variable being borrowed, from the
972
972
// caller's perspective
973
973
let var_id = upvar_def. def_id ( ) . node ;
974
- let var_ty = ty :: node_id_to_type ( self . tcx ( ) , var_id) ;
974
+ let var_ty = try! ( self . typer . node_ty ( var_id) ) ;
975
975
self . mc . cat_def ( closure_id, closure_span, var_ty, upvar_def)
976
976
}
977
977
}
0 commit comments