]> git.lizzy.rs Git - rust.git/commitdiff
Rollup merge of #35380 - TheZoq2:master, r=jonathandturner
authorEduard-Mihai Burtescu <edy.burt@gmail.com>
Sat, 6 Aug 2016 12:01:23 +0000 (15:01 +0300)
committerGitHub <noreply@github.com>
Sat, 6 Aug 2016 12:01:23 +0000 (15:01 +0300)
Update E0004 to use labels

Fixes #35191 and is part of #35233

"r? @jonathandturner

1  2 
src/librustc_const_eval/check_match.rs

index d148d2a0885ed3375f59da34e09b648967462fc4,07e0cece469a36355dd5fb1c030391d562c7429c..2fe4ae627c1dc7be3ea12168369e8df3cb17939f
@@@ -335,7 -335,6 +335,7 @@@ fn check_arms(cx: &MatchCheckCtxt
                          hir::MatchSource::Normal => {
                              let mut err = struct_span_err!(cx.tcx.sess, pat.span, E0001,
                                                             "unreachable pattern");
 +                            err.span_label(pat.span, &format!("this is an unreachable pattern"));
                              // if we had a catchall pattern, hint at that
                              for row in &seen.0 {
                                  if pat_is_catchall(&cx.tcx.def_map.borrow(), row[0].0) {
@@@ -424,10 -423,15 +424,15 @@@ fn check_exhaustive<'a, 'tcx>(cx: &Matc
                              format!("`{}` and {} more", head.join("`, `"), tail.len())
                          }
                      };
-                     span_err!(cx.tcx.sess, sp, E0004,
+                     let label_text = match pattern_strings.len(){
+                         1 => format!("pattern {} not covered", joined_patterns),
+                         _ => format!("patterns {} not covered", joined_patterns)
+                     };
+                     struct_span_err!(cx.tcx.sess, sp, E0004,
                          "non-exhaustive patterns: {} not covered",
                          joined_patterns
-                     );
+                     ).span_label(sp, &label_text).emit();
                  },
              }
          }