about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/librustc_typeck/check/wfcheck.rs6
-rw-r--r--src/test/compile-fail/E0194.rs4
2 files changed, 7 insertions, 3 deletions
diff --git a/src/librustc_typeck/check/wfcheck.rs b/src/librustc_typeck/check/wfcheck.rs
index 6b6a688bf1d..a236c8baa9f 100644
--- a/src/librustc_typeck/check/wfcheck.rs
+++ b/src/librustc_typeck/check/wfcheck.rs
@@ -631,7 +631,9 @@ fn error_392<'a, 'tcx>(ccx: &CrateCtxt<'a, 'tcx>, span: Span, param_name: ast::N
 }
 
 fn error_194(tcx: TyCtxt, span: Span, name: ast::Name) {
-    span_err!(tcx.sess, span, E0194,
+    struct_span_err!(tcx.sess, span, E0194,
               "type parameter `{}` shadows another type parameter of the same name",
-              name);
+              name)
+        .span_label(span, &format!("`{}` shadows another type parameter", name))
+        .emit();
 }
diff --git a/src/test/compile-fail/E0194.rs b/src/test/compile-fail/E0194.rs
index 96b3062cacb..fa94c88328a 100644
--- a/src/test/compile-fail/E0194.rs
+++ b/src/test/compile-fail/E0194.rs
@@ -10,7 +10,9 @@
 
 trait Foo<T> {
     fn do_something(&self) -> T;
-    fn do_something_else<T: Clone>(&self, bar: T); //~ ERROR E0194
+    fn do_something_else<T: Clone>(&self, bar: T);
+    //~^ ERROR E0194
+    //~| NOTE `T` shadows another type parameter
 }
 
 fn main() {