diff --git a/compiler/rustc_expand/src/config.rs b/compiler/rustc_expand/src/config.rs index c95d7cdeb73ab..576607d576ad1 100644 --- a/compiler/rustc_expand/src/config.rs +++ b/compiler/rustc_expand/src/config.rs @@ -387,7 +387,11 @@ impl<'a> StripUnconfigured<'a> { ); if attr.is_doc_comment() { - err.help("`///` is for documentation comments. For a plain comment, use `//`."); + err.help(if attr.style == AttrStyle::Outer { + "`///` is used for outer documentation comments; for a plain comment, use `//`" + } else { + "`//!` is used for inner documentation comments; for a plain comment, use `//` by removing the `!` or inserting a space in between them: `// !`" + }); } err.emit(); diff --git a/tests/ui/feature-gates/feature-gate-stmt_expr_attributes.stderr b/tests/ui/feature-gates/feature-gate-stmt_expr_attributes.stderr index 6cca068072254..14f7d58e47aec 100644 --- a/tests/ui/feature-gates/feature-gate-stmt_expr_attributes.stderr +++ b/tests/ui/feature-gates/feature-gate-stmt_expr_attributes.stderr @@ -17,7 +17,7 @@ LL | /// foo = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date - = help: `///` is for documentation comments. For a plain comment, use `//`. + = help: `///` is used for outer documentation comments; for a plain comment, use `//` error[E0658]: attributes on expressions are experimental --> $DIR/feature-gate-stmt_expr_attributes.rs:10:5 @@ -28,7 +28,7 @@ LL | //! foo = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date - = help: `///` is for documentation comments. For a plain comment, use `//`. + = help: `//!` is used for inner documentation comments; for a plain comment, use `//` by removing the `!` or inserting a space in between them: `// !` error: aborting due to 3 previous errors diff --git a/tests/ui/lint/unused/unused-doc-comments-edge-cases.stderr b/tests/ui/lint/unused/unused-doc-comments-edge-cases.stderr index 55e4834e6707a..c074117455493 100644 --- a/tests/ui/lint/unused/unused-doc-comments-edge-cases.stderr +++ b/tests/ui/lint/unused/unused-doc-comments-edge-cases.stderr @@ -13,7 +13,7 @@ LL | /// useless doc comment = note: see issue #15701 for more information = help: add `#![feature(stmt_expr_attributes)]` to the crate attributes to enable = note: this compiler was built on YYYY-MM-DD; consider upgrading it if it is out of date - = help: `///` is for documentation comments. For a plain comment, use `//`. + = help: `///` is used for outer documentation comments; for a plain comment, use `//` error: unused doc comment --> $DIR/unused-doc-comments-edge-cases.rs:6:9