about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2022-11-21 18:36:26 +0000
committerbors <bors@rust-lang.org>2022-11-21 18:36:26 +0000
commitb7bc90fea3b441234a84b49fdafeb75815eebbab (patch)
treeaba475763a52ff6fcad1c617234288ac9880b8e3 /src
parent1cbc45942d5c0f6eb5d94e3b10762ba541958035 (diff)
parentf47abd89877b7cfa84e28465aaf647cd48bbc503 (diff)
downloadrust-b7bc90fea3b441234a84b49fdafeb75815eebbab.tar.gz
rust-b7bc90fea3b441234a84b49fdafeb75815eebbab.zip
Auto merge of #104120 - mejrs:diag, r=davidtwco
Match and enforce crate and slug names

Some of these were in the wrong place or had a name that didn't match.
Diffstat (limited to 'src')
-rw-r--r--src/test/run-make/translation/broken.ftl2
-rw-r--r--src/test/run-make/translation/missing.ftl2
-rw-r--r--src/test/run-make/translation/working.ftl2
-rw-r--r--src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.rs2
-rw-r--r--src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.rs24
-rw-r--r--src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.stderr11
-rw-r--r--src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.rs140
-rw-r--r--src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.stderr116
8 files changed, 167 insertions, 132 deletions
diff --git a/src/test/run-make/translation/broken.ftl b/src/test/run-make/translation/broken.ftl
index 4e358583528..f1dd6ff0bbd 100644
--- a/src/test/run-make/translation/broken.ftl
+++ b/src/test/run-make/translation/broken.ftl
@@ -1,3 +1,3 @@
 # `foo` isn't provided by this diagnostic so it is expected that the fallback message is used.
-parser_struct_literal_body_without_path = this is a {$foo} message
+parse_struct_literal_body_without_path = this is a {$foo} message
     .suggestion = this is a test suggestion
diff --git a/src/test/run-make/translation/missing.ftl b/src/test/run-make/translation/missing.ftl
index 77bbda3575b..6be24dc7bb9 100644
--- a/src/test/run-make/translation/missing.ftl
+++ b/src/test/run-make/translation/missing.ftl
@@ -1,3 +1,3 @@
-# `parser_struct_literal_body_without_path` isn't provided by this resource at all, so the
+# `parse_struct_literal_body_without_path` isn't provided by this resource at all, so the
 # fallback should be used.
 foo = bar
diff --git a/src/test/run-make/translation/working.ftl b/src/test/run-make/translation/working.ftl
index d5ea8673875..50d126e3fbf 100644
--- a/src/test/run-make/translation/working.ftl
+++ b/src/test/run-make/translation/working.ftl
@@ -1,2 +1,2 @@
-parser_struct_literal_body_without_path = this is a test message
+parse_struct_literal_body_without_path = this is a test message
     .suggestion = this is a test suggestion
diff --git a/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.rs b/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.rs
index 411eb3fba48..cb4cd466590 100644
--- a/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.rs
+++ b/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.rs
@@ -471,7 +471,7 @@ struct NoApplicability {
 }
 
 #[derive(Subdiagnostic)]
-#[note(parser_add_paren)]
+#[note(parse_add_paren)]
 struct Note;
 
 #[derive(Diagnostic)]
diff --git a/src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.rs b/src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.rs
new file mode 100644
index 00000000000..a0a8114e0c5
--- /dev/null
+++ b/src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.rs
@@ -0,0 +1,24 @@
+// rustc-env:CARGO_CRATE_NAME=rustc_dummy
+
+#![feature(rustc_private)]
+#![crate_type = "lib"]
+
+extern crate rustc_span;
+use rustc_span::symbol::Ident;
+use rustc_span::Span;
+
+extern crate rustc_macros;
+use rustc_macros::{Diagnostic, LintDiagnostic, Subdiagnostic};
+
+extern crate rustc_middle;
+use rustc_middle::ty::Ty;
+
+extern crate rustc_errors;
+use rustc_errors::{Applicability, MultiSpan};
+
+extern crate rustc_session;
+
+#[derive(Diagnostic)]
+#[diag(compiletest_example, code = "E0123")]
+//~^ ERROR diagnostic slug and crate name do not match
+struct Hello {}
diff --git a/src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.stderr b/src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.stderr
new file mode 100644
index 00000000000..dcf4af5df50
--- /dev/null
+++ b/src/test/ui-fulldeps/session-diagnostic/enforce_slug_naming.stderr
@@ -0,0 +1,11 @@
+error: diagnostic slug and crate name do not match
+  --> $DIR/enforce_slug_naming.rs:22:8
+   |
+LL | #[diag(compiletest_example, code = "E0123")]
+   |        ^^^^^^^^^^^^^^^^^^^
+   |
+   = note: slug is `compiletest_example` but the crate name is `rustc_dummy`
+   = help: expected a slug starting with `dummy_...`
+
+error: aborting due to previous error
+
diff --git a/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.rs b/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.rs
index 078ec3baac9..61ac456a6b6 100644
--- a/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.rs
+++ b/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.rs
@@ -20,7 +20,7 @@ use rustc_macros::Subdiagnostic;
 use rustc_span::Span;
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct A {
     #[primary_span]
     span: Span,
@@ -29,13 +29,13 @@ struct A {
 
 #[derive(Subdiagnostic)]
 enum B {
-    #[label(parser_add_paren)]
+    #[label(parse_add_paren)]
     A {
         #[primary_span]
         span: Span,
         var: String,
     },
-    #[label(parser_add_paren)]
+    #[label(parse_add_paren)]
     B {
         #[primary_span]
         span: Span,
@@ -44,7 +44,7 @@ enum B {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 //~^ ERROR label without `#[primary_span]` field
 struct C {
     var: String,
@@ -138,7 +138,7 @@ struct M {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren, code = "...")]
+#[label(parse_add_paren, code = "...")]
 //~^ ERROR `#[label(code = ...)]` is not a valid attribute
 struct N {
     #[primary_span]
@@ -147,7 +147,7 @@ struct N {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren, applicability = "machine-applicable")]
+#[label(parse_add_paren, applicability = "machine-applicable")]
 //~^ ERROR `#[label(applicability = ...)]` is not a valid attribute
 struct O {
     #[primary_span]
@@ -160,7 +160,7 @@ struct O {
 //~^ ERROR cannot find attribute `foo` in this scope
 //~^^ ERROR unsupported type attribute for subdiagnostic enum
 enum P {
-    #[label(parser_add_paren)]
+    #[label(parse_add_paren)]
     A {
         #[primary_span]
         span: Span,
@@ -230,7 +230,7 @@ enum U {
 
 #[derive(Subdiagnostic)]
 enum V {
-    #[label(parser_add_paren)]
+    #[label(parse_add_paren)]
     A {
         #[primary_span]
         span: Span,
@@ -244,7 +244,7 @@ enum V {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 //~^ ERROR label without `#[primary_span]` field
 struct W {
     #[primary_span]
@@ -253,7 +253,7 @@ struct W {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct X {
     #[primary_span]
     span: Span,
@@ -263,7 +263,7 @@ struct X {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct Y {
     #[primary_span]
     span: Span,
@@ -274,7 +274,7 @@ struct Y {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct Z {
     #[primary_span]
     span: Span,
@@ -285,7 +285,7 @@ struct Z {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct AA {
     #[primary_span]
     span: Span,
@@ -296,7 +296,7 @@ struct AA {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct AB {
     #[primary_span]
     span: Span,
@@ -312,23 +312,23 @@ union AC {
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
+#[label(parse_add_paren)]
 struct AD {
     #[primary_span]
     span: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren, parser_add_paren)]
-//~^ ERROR `#[label(parser_add_paren)]` is not a valid attribute
+#[label(parse_add_paren, parse_add_paren)]
+//~^ ERROR `#[label(parse_add_paren)]` is not a valid attribute
 struct AE {
     #[primary_span]
     span: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct AF {
     #[primary_span]
     //~^ NOTE previously specified here
@@ -346,7 +346,7 @@ struct AG {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...")]
+#[suggestion(parse_add_paren, code = "...")]
 struct AH {
     #[primary_span]
     span: Span,
@@ -357,7 +357,7 @@ struct AH {
 
 #[derive(Subdiagnostic)]
 enum AI {
-    #[suggestion(parser_add_paren, code = "...")]
+    #[suggestion(parse_add_paren, code = "...")]
     A {
         #[primary_span]
         span: Span,
@@ -365,7 +365,7 @@ enum AI {
         applicability: Applicability,
         var: String,
     },
-    #[suggestion(parser_add_paren, code = "...")]
+    #[suggestion(parse_add_paren, code = "...")]
     B {
         #[primary_span]
         span: Span,
@@ -376,7 +376,7 @@ enum AI {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...", code = "...")]
+#[suggestion(parse_add_paren, code = "...", code = "...")]
 //~^ ERROR specified multiple times
 //~^^ NOTE previously specified here
 struct AJ {
@@ -387,7 +387,7 @@ struct AJ {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...")]
+#[suggestion(parse_add_paren, code = "...")]
 struct AK {
     #[primary_span]
     span: Span,
@@ -400,7 +400,7 @@ struct AK {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...")]
+#[suggestion(parse_add_paren, code = "...")]
 struct AL {
     #[primary_span]
     span: Span,
@@ -410,14 +410,14 @@ struct AL {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...")]
+#[suggestion(parse_add_paren, code = "...")]
 struct AM {
     #[primary_span]
     span: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren)]
+#[suggestion(parse_add_paren)]
 //~^ ERROR suggestion without `code = "..."`
 struct AN {
     #[primary_span]
@@ -427,7 +427,7 @@ struct AN {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...", applicability = "foo")]
+#[suggestion(parse_add_paren, code = "...", applicability = "foo")]
 //~^ ERROR invalid applicability
 struct AO {
     #[primary_span]
@@ -435,24 +435,24 @@ struct AO {
 }
 
 #[derive(Subdiagnostic)]
-#[help(parser_add_paren)]
+#[help(parse_add_paren)]
 struct AP {
     var: String,
 }
 
 #[derive(Subdiagnostic)]
-#[note(parser_add_paren)]
+#[note(parse_add_paren)]
 struct AQ;
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...")]
+#[suggestion(parse_add_paren, code = "...")]
 //~^ ERROR suggestion without `#[primary_span]` field
 struct AR {
     var: String,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...", applicability = "machine-applicable")]
+#[suggestion(parse_add_paren, code = "...", applicability = "machine-applicable")]
 struct AS {
     #[primary_span]
     span: Span,
@@ -462,7 +462,7 @@ struct AS {
 #[label]
 //~^ ERROR unsupported type attribute for subdiagnostic enum
 enum AT {
-    #[label(parser_add_paren)]
+    #[label(parse_add_paren)]
     A {
         #[primary_span]
         span: Span,
@@ -471,7 +471,7 @@ enum AT {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "{var}", applicability = "machine-applicable")]
+#[suggestion(parse_add_paren, code = "{var}", applicability = "machine-applicable")]
 struct AU {
     #[primary_span]
     span: Span,
@@ -479,7 +479,7 @@ struct AU {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "{var}", applicability = "machine-applicable")]
+#[suggestion(parse_add_paren, code = "{var}", applicability = "machine-applicable")]
 //~^ ERROR `var` doesn't refer to a field on this type
 struct AV {
     #[primary_span]
@@ -488,7 +488,7 @@ struct AV {
 
 #[derive(Subdiagnostic)]
 enum AW {
-    #[suggestion(parser_add_paren, code = "{var}", applicability = "machine-applicable")]
+    #[suggestion(parse_add_paren, code = "{var}", applicability = "machine-applicable")]
     A {
         #[primary_span]
         span: Span,
@@ -498,7 +498,7 @@ enum AW {
 
 #[derive(Subdiagnostic)]
 enum AX {
-    #[suggestion(parser_add_paren, code = "{var}", applicability = "machine-applicable")]
+    #[suggestion(parse_add_paren, code = "{var}", applicability = "machine-applicable")]
     //~^ ERROR `var` doesn't refer to a field on this type
     A {
         #[primary_span]
@@ -507,18 +507,18 @@ enum AX {
 }
 
 #[derive(Subdiagnostic)]
-#[warning(parser_add_paren)]
+#[warning(parse_add_paren)]
 struct AY {}
 
 #[derive(Subdiagnostic)]
-#[warning(parser_add_paren)]
+#[warning(parse_add_paren)]
 struct AZ {
     #[primary_span]
     span: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "...")]
+#[suggestion(parse_add_paren, code = "...")]
 //~^ ERROR suggestion without `#[primary_span]` field
 struct BA {
     #[suggestion_part]
@@ -533,7 +533,7 @@ struct BA {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, code = "...", applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, code = "...", applicability = "machine-applicable")]
 //~^ ERROR multipart suggestion without any `#[suggestion_part(...)]` fields
 //~| ERROR `#[multipart_suggestion(code = ...)]` is not a valid attribute
 struct BBa {
@@ -541,7 +541,7 @@ struct BBa {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, applicability = "machine-applicable")]
 struct BBb {
     #[suggestion_part]
     //~^ ERROR `#[suggestion_part(...)]` attribute without `code = "..."`
@@ -549,7 +549,7 @@ struct BBb {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, applicability = "machine-applicable")]
 struct BBc {
     #[suggestion_part()]
     //~^ ERROR `#[suggestion_part(...)]` attribute without `code = "..."`
@@ -557,7 +557,7 @@ struct BBc {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 //~^ ERROR multipart suggestion without any `#[suggestion_part(...)]` fields
 struct BC {
     #[primary_span]
@@ -566,7 +566,7 @@ struct BC {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BD {
     #[suggestion_part]
     //~^ ERROR `#[suggestion_part(...)]` attribute without `code = "..."`
@@ -586,7 +586,7 @@ struct BD {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, applicability = "machine-applicable")]
 struct BE {
     #[suggestion_part(code = "...", code = ",,,")]
     //~^ ERROR specified multiple times
@@ -595,7 +595,7 @@ struct BE {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, applicability = "machine-applicable")]
 struct BF {
     #[suggestion_part(code = "(")]
     first: Span,
@@ -604,7 +604,7 @@ struct BF {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BG {
     #[applicability]
     appl: Applicability,
@@ -615,7 +615,7 @@ struct BG {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, applicability = "machine-applicable")]
 struct BH {
     #[applicability]
     //~^ ERROR `#[applicability]` has no effect
@@ -627,14 +627,14 @@ struct BH {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren, applicability = "machine-applicable")]
+#[multipart_suggestion(parse_add_paren, applicability = "machine-applicable")]
 struct BI {
     #[suggestion_part(code = "")]
     spans: Vec<Span>,
 }
 
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct BJ {
     #[primary_span]
     span: Span,
@@ -643,7 +643,7 @@ struct BJ {
 
 /// with a doc comment on the type..
 #[derive(Subdiagnostic)]
-#[label(parser_add_paren)]
+#[label(parse_add_paren)]
 struct BK {
     /// ..and the field
     #[primary_span]
@@ -654,7 +654,7 @@ struct BK {
 #[derive(Subdiagnostic)]
 enum BL {
     /// ..and the variant..
-    #[label(parser_add_paren)]
+    #[label(parse_add_paren)]
     Foo {
         /// ..and the field
         #[primary_span]
@@ -663,7 +663,7 @@ enum BL {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BM {
     #[suggestion_part(code("foo"))]
     //~^ ERROR expected exactly one string literal for `code = ...`
@@ -672,7 +672,7 @@ struct BM {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BN {
     #[suggestion_part(code("foo", "bar"))]
     //~^ ERROR expected exactly one string literal for `code = ...`
@@ -681,7 +681,7 @@ struct BN {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BO {
     #[suggestion_part(code(3))]
     //~^ ERROR expected exactly one string literal for `code = ...`
@@ -690,7 +690,7 @@ struct BO {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BP {
     #[suggestion_part(code())]
     //~^ ERROR expected exactly one string literal for `code = ...`
@@ -699,7 +699,7 @@ struct BP {
 }
 
 #[derive(Subdiagnostic)]
-#[multipart_suggestion(parser_add_paren)]
+#[multipart_suggestion(parse_add_paren)]
 struct BQ {
     #[suggestion_part(code = 3)]
     //~^ ERROR `code = "..."`/`code(...)` must contain only string literals
@@ -708,42 +708,42 @@ struct BQ {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "")]
+#[suggestion(parse_add_paren, code = "")]
 struct SuggestionStyleDefault {
     #[primary_span]
     sub: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = "short")]
+#[suggestion(parse_add_paren, code = "", style = "short")]
 struct SuggestionStyleShort {
     #[primary_span]
     sub: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = "hidden")]
+#[suggestion(parse_add_paren, code = "", style = "hidden")]
 struct SuggestionStyleHidden {
     #[primary_span]
     sub: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = "verbose")]
+#[suggestion(parse_add_paren, code = "", style = "verbose")]
 struct SuggestionStyleVerbose {
     #[primary_span]
     sub: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = "tool-only")]
+#[suggestion(parse_add_paren, code = "", style = "tool-only")]
 struct SuggestionStyleToolOnly {
     #[primary_span]
     sub: Span,
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = "hidden", style = "normal")]
+#[suggestion(parse_add_paren, code = "", style = "hidden", style = "normal")]
 //~^ ERROR specified multiple times
 //~| NOTE previously specified here
 struct SuggestionStyleTwice {
@@ -752,7 +752,7 @@ struct SuggestionStyleTwice {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion_hidden(parser_add_paren, code = "")]
+#[suggestion_hidden(parse_add_paren, code = "")]
 //~^ ERROR #[suggestion_hidden(...)]` is not a valid attribute
 struct SuggestionStyleOldSyntax {
     #[primary_span]
@@ -760,7 +760,7 @@ struct SuggestionStyleOldSyntax {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion_hidden(parser_add_paren, code = "", style = "normal")]
+#[suggestion_hidden(parse_add_paren, code = "", style = "normal")]
 //~^ ERROR #[suggestion_hidden(...)]` is not a valid attribute
 struct SuggestionStyleOldAndNewSyntax {
     #[primary_span]
@@ -768,7 +768,7 @@ struct SuggestionStyleOldAndNewSyntax {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = "foo")]
+#[suggestion(parse_add_paren, code = "", style = "foo")]
 //~^ ERROR invalid suggestion style
 struct SuggestionStyleInvalid1 {
     #[primary_span]
@@ -776,7 +776,7 @@ struct SuggestionStyleInvalid1 {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style = 42)]
+#[suggestion(parse_add_paren, code = "", style = 42)]
 //~^ ERROR `#[suggestion(style = ...)]` is not a valid attribute
 struct SuggestionStyleInvalid2 {
     #[primary_span]
@@ -784,7 +784,7 @@ struct SuggestionStyleInvalid2 {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style)]
+#[suggestion(parse_add_paren, code = "", style)]
 //~^ ERROR `#[suggestion(style)]` is not a valid attribute
 struct SuggestionStyleInvalid3 {
     #[primary_span]
@@ -792,7 +792,7 @@ struct SuggestionStyleInvalid3 {
 }
 
 #[derive(Subdiagnostic)]
-#[suggestion(parser_add_paren, code = "", style("foo"))]
+#[suggestion(parse_add_paren, code = "", style("foo"))]
 //~^ ERROR `#[suggestion(style(...))]` is not a valid attribute
 struct SuggestionStyleInvalid4 {
     #[primary_span]
diff --git a/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.stderr b/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.stderr
index 8e06c43e6d0..b594fa6cde1 100644
--- a/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.stderr
+++ b/src/test/ui-fulldeps/session-diagnostic/subdiagnostic-derive.stderr
@@ -1,7 +1,7 @@
 error: label without `#[primary_span]` field
   --> $DIR/subdiagnostic-derive.rs:47:1
    |
-LL | / #[label(parser_add_paren)]
+LL | / #[label(parse_add_paren)]
 LL | |
 LL | | struct C {
 LL | |     var: String,
@@ -81,16 +81,16 @@ LL | #[label()]
    | ^^^^^^^^^^
 
 error: `#[label(code = ...)]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:141:27
+  --> $DIR/subdiagnostic-derive.rs:141:26
    |
-LL | #[label(parser_add_paren, code = "...")]
-   |                           ^^^^^^^^^^^^
+LL | #[label(parse_add_paren, code = "...")]
+   |                          ^^^^^^^^^^^^
 
 error: `#[label(applicability = ...)]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:150:27
+  --> $DIR/subdiagnostic-derive.rs:150:26
    |
-LL | #[label(parser_add_paren, applicability = "machine-applicable")]
-   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL | #[label(parse_add_paren, applicability = "machine-applicable")]
+   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 error: unsupported type attribute for subdiagnostic enum
   --> $DIR/subdiagnostic-derive.rs:159:1
@@ -143,7 +143,7 @@ LL |     #[primary_span]
 error: label without `#[primary_span]` field
   --> $DIR/subdiagnostic-derive.rs:247:1
    |
-LL | / #[label(parser_add_paren)]
+LL | / #[label(parse_add_paren)]
 LL | |
 LL | | struct W {
 LL | |     #[primary_span]
@@ -190,11 +190,11 @@ LL | |     b: u64,
 LL | | }
    | |_^
 
-error: `#[label(parser_add_paren)]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:323:27
+error: `#[label(parse_add_paren)]` is not a valid attribute
+  --> $DIR/subdiagnostic-derive.rs:323:26
    |
-LL | #[label(parser_add_paren, parser_add_paren)]
-   |                           ^^^^^^^^^^^^^^^^
+LL | #[label(parse_add_paren, parse_add_paren)]
+   |                          ^^^^^^^^^^^^^^^
    |
    = help: a diagnostic slug must be the first argument to the attribute
 
@@ -217,16 +217,16 @@ LL | struct AG {
    |        ^^
 
 error: specified multiple times
-  --> $DIR/subdiagnostic-derive.rs:379:46
+  --> $DIR/subdiagnostic-derive.rs:379:45
    |
-LL | #[suggestion(parser_add_paren, code = "...", code = "...")]
-   |                                              ^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "...", code = "...")]
+   |                                             ^^^^^^^^^^^^
    |
 note: previously specified here
-  --> $DIR/subdiagnostic-derive.rs:379:32
+  --> $DIR/subdiagnostic-derive.rs:379:31
    |
-LL | #[suggestion(parser_add_paren, code = "...", code = "...")]
-   |                                ^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "...", code = "...")]
+   |                               ^^^^^^^^^^^^
 
 error: specified multiple times
   --> $DIR/subdiagnostic-derive.rs:397:5
@@ -249,19 +249,19 @@ LL |     #[applicability]
 error: suggestion without `code = "..."`
   --> $DIR/subdiagnostic-derive.rs:420:1
    |
-LL | #[suggestion(parser_add_paren)]
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren)]
+   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 error: invalid applicability
-  --> $DIR/subdiagnostic-derive.rs:430:46
+  --> $DIR/subdiagnostic-derive.rs:430:45
    |
-LL | #[suggestion(parser_add_paren, code = "...", applicability = "foo")]
-   |                                              ^^^^^^^^^^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "...", applicability = "foo")]
+   |                                             ^^^^^^^^^^^^^^^^^^^^^
 
 error: suggestion without `#[primary_span]` field
   --> $DIR/subdiagnostic-derive.rs:448:1
    |
-LL | / #[suggestion(parser_add_paren, code = "...")]
+LL | / #[suggestion(parse_add_paren, code = "...")]
 LL | |
 LL | | struct AR {
 LL | |     var: String,
@@ -275,16 +275,16 @@ LL | #[label]
    | ^^^^^^^^
 
 error: `var` doesn't refer to a field on this type
-  --> $DIR/subdiagnostic-derive.rs:482:39
+  --> $DIR/subdiagnostic-derive.rs:482:38
    |
-LL | #[suggestion(parser_add_paren, code = "{var}", applicability = "machine-applicable")]
-   |                                       ^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "{var}", applicability = "machine-applicable")]
+   |                                      ^^^^^^^
 
 error: `var` doesn't refer to a field on this type
-  --> $DIR/subdiagnostic-derive.rs:501:43
+  --> $DIR/subdiagnostic-derive.rs:501:42
    |
-LL |     #[suggestion(parser_add_paren, code = "{var}", applicability = "machine-applicable")]
-   |                                           ^^^^^^^
+LL |     #[suggestion(parse_add_paren, code = "{var}", applicability = "machine-applicable")]
+   |                                          ^^^^^^^
 
 error: `#[suggestion_part]` is not a valid attribute
   --> $DIR/subdiagnostic-derive.rs:524:5
@@ -305,7 +305,7 @@ LL |     #[suggestion_part(code = "...")]
 error: suggestion without `#[primary_span]` field
   --> $DIR/subdiagnostic-derive.rs:521:1
    |
-LL | / #[suggestion(parser_add_paren, code = "...")]
+LL | / #[suggestion(parse_add_paren, code = "...")]
 LL | |
 LL | | struct BA {
 LL | |     #[suggestion_part]
@@ -315,17 +315,17 @@ LL | | }
    | |_^
 
 error: `#[multipart_suggestion(code = ...)]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:536:42
+  --> $DIR/subdiagnostic-derive.rs:536:41
    |
-LL | #[multipart_suggestion(parser_add_paren, code = "...", applicability = "machine-applicable")]
-   |                                          ^^^^^^^^^^^^
+LL | #[multipart_suggestion(parse_add_paren, code = "...", applicability = "machine-applicable")]
+   |                                         ^^^^^^^^^^^^
    |
    = help: only `style` and `applicability` are valid nested attributes
 
 error: multipart suggestion without any `#[suggestion_part(...)]` fields
   --> $DIR/subdiagnostic-derive.rs:536:1
    |
-LL | / #[multipart_suggestion(parser_add_paren, code = "...", applicability = "machine-applicable")]
+LL | / #[multipart_suggestion(parse_add_paren, code = "...", applicability = "machine-applicable")]
 LL | |
 LL | |
 LL | | struct BBa {
@@ -356,7 +356,7 @@ LL |     #[primary_span]
 error: multipart suggestion without any `#[suggestion_part(...)]` fields
   --> $DIR/subdiagnostic-derive.rs:560:1
    |
-LL | / #[multipart_suggestion(parser_add_paren)]
+LL | / #[multipart_suggestion(parse_add_paren)]
 LL | |
 LL | | struct BC {
 LL | |     #[primary_span]
@@ -446,60 +446,60 @@ LL |     #[suggestion_part(code = 3)]
    |                       ^^^^^^^^
 
 error: specified multiple times
-  --> $DIR/subdiagnostic-derive.rs:746:61
+  --> $DIR/subdiagnostic-derive.rs:746:60
    |
-LL | #[suggestion(parser_add_paren, code = "", style = "hidden", style = "normal")]
-   |                                                             ^^^^^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "", style = "hidden", style = "normal")]
+   |                                                            ^^^^^^^^^^^^^^^^
    |
 note: previously specified here
-  --> $DIR/subdiagnostic-derive.rs:746:43
+  --> $DIR/subdiagnostic-derive.rs:746:42
    |
-LL | #[suggestion(parser_add_paren, code = "", style = "hidden", style = "normal")]
-   |                                           ^^^^^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "", style = "hidden", style = "normal")]
+   |                                          ^^^^^^^^^^^^^^^^
 
 error: `#[suggestion_hidden(...)]` is not a valid attribute
   --> $DIR/subdiagnostic-derive.rs:755:1
    |
-LL | #[suggestion_hidden(parser_add_paren, code = "")]
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL | #[suggestion_hidden(parse_add_paren, code = "")]
+   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: Use `#[suggestion(..., style = "hidden")]` instead
 
 error: `#[suggestion_hidden(...)]` is not a valid attribute
   --> $DIR/subdiagnostic-derive.rs:763:1
    |
-LL | #[suggestion_hidden(parser_add_paren, code = "", style = "normal")]
-   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+LL | #[suggestion_hidden(parse_add_paren, code = "", style = "normal")]
+   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = help: Use `#[suggestion(..., style = "hidden")]` instead
 
 error: invalid suggestion style
-  --> $DIR/subdiagnostic-derive.rs:771:51
+  --> $DIR/subdiagnostic-derive.rs:771:50
    |
-LL | #[suggestion(parser_add_paren, code = "", style = "foo")]
-   |                                                   ^^^^^
+LL | #[suggestion(parse_add_paren, code = "", style = "foo")]
+   |                                                  ^^^^^
    |
    = help: valid styles are `normal`, `short`, `hidden`, `verbose` and `tool-only`
 
 error: `#[suggestion(style = ...)]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:779:43
+  --> $DIR/subdiagnostic-derive.rs:779:42
    |
-LL | #[suggestion(parser_add_paren, code = "", style = 42)]
-   |                                           ^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "", style = 42)]
+   |                                          ^^^^^^^^^^
 
 error: `#[suggestion(style)]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:787:43
+  --> $DIR/subdiagnostic-derive.rs:787:42
    |
-LL | #[suggestion(parser_add_paren, code = "", style)]
-   |                                           ^^^^^
+LL | #[suggestion(parse_add_paren, code = "", style)]
+   |                                          ^^^^^
    |
    = help: a diagnostic slug must be the first argument to the attribute
 
 error: `#[suggestion(style(...))]` is not a valid attribute
-  --> $DIR/subdiagnostic-derive.rs:795:43
+  --> $DIR/subdiagnostic-derive.rs:795:42
    |
-LL | #[suggestion(parser_add_paren, code = "", style("foo"))]
-   |                                           ^^^^^^^^^^^^
+LL | #[suggestion(parse_add_paren, code = "", style("foo"))]
+   |                                          ^^^^^^^^^^^^
 
 error: cannot find attribute `foo` in this scope
   --> $DIR/subdiagnostic-derive.rs:63:3