]> git.lizzy.rs Git - rust.git/commitdiff
address review comment, reduce scope
authorEsteban Küber <esteban@kuber.com.ar>
Wed, 12 Sep 2018 00:06:11 +0000 (17:06 -0700)
committerEsteban Küber <esteban@kuber.com.ar>
Wed, 12 Sep 2018 00:09:23 +0000 (17:09 -0700)
src/librustc_typeck/check/_match.rs
src/librustc_typeck/check/demand.rs

index b7b1751a8ea5fc8c40516432539cf4c3cad8340d..a7b266143ba929c08ea4370efa90ef5065921973 100644 (file)
@@ -298,8 +298,8 @@ pub fn check_pat_walk(
                     TypeVariableOrigin::TypeInference(pat.span)));
                 let element_tys = tcx.mk_type_list(element_tys_iter);
                 let pat_ty = tcx.mk_ty(ty::Tuple(element_tys));
-                self.demand_eqtype(pat.span, expected, pat_ty);
-                if self.has_errors.get() {
+                if let Some(mut err) = self.demand_eqtype_diag(pat.span, expected, pat_ty) {
+                    err.emit();
                     let element_tys_iter = (0..max_len).map(|_| tcx.types.err);
                     for (_, elem) in elements.iter().enumerate_and_adjust(max_len, ddpos) {
                         self.check_pat_walk(elem, &tcx.types.err, def_bm, true);
index 47bbc95aa496ba9098a4a6493e08d43f99cee314..4e22ead8db987a0514b885a992a43eac35332084 100644 (file)
@@ -50,7 +50,6 @@ pub fn demand_suptype_diag(&self,
 
     pub fn demand_eqtype(&self, sp: Span, expected: Ty<'tcx>, actual: Ty<'tcx>) {
         if let Some(mut err) = self.demand_eqtype_diag(sp, expected, actual) {
-            self.has_errors.set(true);
             err.emit();
         }
     }