From bfbdff0e2d894cf1f88e93df864b2c02e940a99a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adam=20Medzi=C5=84ski?= <adam.medzinski@gmail.com>
Date: Fri, 5 Aug 2016 11:27:59 +0200
Subject: [PATCH] Updated error message E0388

---
 src/librustc_borrowck/borrowck/mod.rs | 6 ++++--
 src/test/compile-fail/E0017.rs        | 1 +
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/librustc_borrowck/borrowck/mod.rs b/src/librustc_borrowck/borrowck/mod.rs
index 904cffac6b3cd..ada8a3d80b23a 100644
--- a/src/librustc_borrowck/borrowck/mod.rs
+++ b/src/librustc_borrowck/borrowck/mod.rs
@@ -910,9 +910,11 @@ impl<'a, 'tcx> BorrowckCtxt<'a, 'tcx> {
             }
             mc::AliasableStatic |
             mc::AliasableStaticMut => {
-                struct_span_err!(
+                let mut err = struct_span_err!(
                     self.tcx.sess, span, E0388,
-                    "{} in a static location", prefix)
+                    "{} in a static location", prefix);
+                err.span_label(span, &format!("cannot write data in a static definition"));
+                err
             }
             mc::AliasableBorrowed => {
                 struct_span_err!(
diff --git a/src/test/compile-fail/E0017.rs b/src/test/compile-fail/E0017.rs
index 13f2c23d8c4a9..8f043d16c1134 100644
--- a/src/test/compile-fail/E0017.rs
+++ b/src/test/compile-fail/E0017.rs
@@ -16,6 +16,7 @@ const CR: &'static mut i32 = &mut C; //~ ERROR E0017
 static STATIC_REF: &'static mut i32 = &mut X; //~ ERROR E0017
                                               //~| ERROR E0017
                                               //~| ERROR E0388
+                                              //~| NOTE cannot write data in a static definition
 static CONST_REF: &'static mut i32 = &mut C; //~ ERROR E0017
                                              //~| ERROR E0017