about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark Rousskov <mark.simulacrum@gmail.com>2018-06-12 11:22:54 -0600
committerGitHub <noreply@github.com>2018-06-12 11:22:54 -0600
commit398e5708918f61a2de74c334d513ea642e930181 (patch)
treeed99d9d16f423d46bd207ea788e20d8858986da6
parent1e06b1757c843c4cda538327dbd325378c539bfe (diff)
parente9e0ca0382e9e5da4db89f22ec0de15dbd966d32 (diff)
downloadrust-398e5708918f61a2de74c334d513ea642e930181.tar.gz
rust-398e5708918f61a2de74c334d513ea642e930181.zip
Rollup merge of #51510 - Havvy:diagnostic-list, r=GuillaumeGomez
Long diagnostic for E0538

r? @GuillaumeGomez
-rw-r--r--src/libsyntax/diagnostic_list.rs31
1 files changed, 30 insertions, 1 deletions
diff --git a/src/libsyntax/diagnostic_list.rs b/src/libsyntax/diagnostic_list.rs
index 9775a6475cc..ab8317bfa02 100644
--- a/src/libsyntax/diagnostic_list.rs
+++ b/src/libsyntax/diagnostic_list.rs
@@ -93,6 +93,36 @@ For more information about the cfg attribute, read:
 https://doc.rust-lang.org/reference.html#conditional-compilation
 "##,
 
+E0538: r##"
+Attribute contains same meta item more than once.
+
+Erroneous code example:
+
+```compile_fail,E0538
+#[deprecated(
+    since="1.0.0",
+    note="First deprecation note.",
+    note="Second deprecation note." // error: multiple same meta item
+)]
+fn deprecated_function() {}
+```
+
+Meta items are the key-value pairs inside of an attribute. Each key may only be
+used once in each attribute.
+
+To fix the problem, remove all but one of the meta items with the same key.
+
+Example:
+
+```
+#[deprecated(
+    since="1.0.0",
+    note="First deprecation note."
+)]
+fn deprecated_function() {}
+```
+"##,
+
 E0541: r##"
 An unknown meta item was used.
 
@@ -347,7 +377,6 @@ and likely to change in the future.
 }
 
 register_diagnostics! {
-    E0538, // multiple [same] items
     E0539, // incorrect meta item
     E0540, // multiple rustc_deprecated attributes
     E0542, // missing 'since'