]> git.lizzy.rs Git - rust.git/commitdiff
Fix `deny(invalid_doc_attributes)`
authorJoshua Nelson <jyn514@gmail.com>
Thu, 20 May 2021 03:13:26 +0000 (23:13 -0400)
committerJoshua Nelson <jyn514@gmail.com>
Fri, 4 Jun 2021 19:20:26 +0000 (15:20 -0400)
compiler/rustc_lint_defs/src/builtin.rs
src/librustdoc/core.rs
src/test/rustdoc-ui/doc-spotlight.fixed
src/test/rustdoc-ui/doc-spotlight.rs
src/test/rustdoc-ui/doc-spotlight.stderr
src/test/ui/rustdoc/deny-invalid-doc-attrs.rs [new file with mode: 0644]
src/test/ui/rustdoc/deny-invalid-doc-attrs.stderr [new file with mode: 0644]

index 15246971bae02e82175430a15b2b5f92a65ba82f..352146d64635ad69f72e56cac4c6ac926174426a 100644 (file)
         USELESS_DEPRECATED,
         UNSUPPORTED_NAKED_FUNCTIONS,
         MISSING_ABI,
+        INVALID_DOC_ATTRIBUTES,
         SEMICOLON_IN_EXPRESSIONS_FROM_MACROS,
         DISJOINT_CAPTURE_MIGRATION,
         LEGACY_DERIVE_HELPERS,
index 3dd13a8f17072940d1812cd71038339a69c31b55..5c4c74c57bd8e4039f63a7a521143323497fa561 100644 (file)
@@ -217,8 +217,9 @@ impl<'tcx> DocContext<'tcx> {
     // By default, rustdoc ignores all lints.
     // Specifically unblock lints relevant to documentation or the lint machinery itself.
     let mut lints_to_show = vec![
-        // it's unclear whether this should be part of rustdoc directly (#77364)
+        // it's unclear whether these should be part of rustdoc directly (#77364)
         rustc_lint::builtin::MISSING_DOCS.name.to_string(),
+        rustc_lint::builtin::INVALID_DOC_ATTRIBUTES.name.to_string(),
         // these are definitely not part of rustdoc, but we want to warn on them anyway.
         rustc_lint::builtin::RENAMED_AND_REMOVED_LINTS.name.to_string(),
         rustc_lint::builtin::UNKNOWN_LINTS.name.to_string(),
index 94b69a99879c073ac12dd0d53fd6359bc5cbdb73..4b58778eacd17605e54d0ce7f062c620556f3f9a 100644 (file)
@@ -1,9 +1,8 @@
-// check-pass
 // run-rustfix
-
+#![deny(warnings)]
 #![feature(doc_notable_trait)]
 
 #[doc(notable_trait)]
-//~^ WARN unknown `doc` attribute `spotlight`
+//~^ ERROR unknown `doc` attribute `spotlight`
 //~| WARN this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
 trait MyTrait {}
index cc5f159a8093e9c64923cbb89c3cb4614c27ddd5..16e387245802b128364f52c61b7091844c823e30 100644 (file)
@@ -1,9 +1,8 @@
-// check-pass
 // run-rustfix
-
+#![deny(warnings)]
 #![feature(doc_notable_trait)]
 
 #[doc(spotlight)]
-//~^ WARN unknown `doc` attribute `spotlight`
+//~^ ERROR unknown `doc` attribute `spotlight`
 //~| WARN this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
 trait MyTrait {}
index e5fa6293f3d8d6bb976b54967fe307f65d14707f..8e7831139a86058f75e249c1215c3968ac5515b8 100644 (file)
@@ -1,14 +1,19 @@
-warning: unknown `doc` attribute `spotlight`
-  --> $DIR/doc-spotlight.rs:6:7
+error: unknown `doc` attribute `spotlight`
+  --> $DIR/doc-spotlight.rs:5:7
    |
 LL | #[doc(spotlight)]
    |       ^^^^^^^^^ help: use `notable_trait` instead
    |
-   = note: `#[warn(invalid_doc_attributes)]` on by default
+note: the lint level is defined here
+  --> $DIR/doc-spotlight.rs:2:9
+   |
+LL | #![deny(warnings)]
+   |         ^^^^^^^^
+   = note: `#[deny(invalid_doc_attributes)]` implied by `#[deny(warnings)]`
    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
    = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
    = note: `doc(spotlight)` was renamed to `doc(notable_trait)`
    = note: `doc(spotlight)` is now a no-op
 
-warning: 1 warning emitted
+error: aborting due to previous error
 
diff --git a/src/test/ui/rustdoc/deny-invalid-doc-attrs.rs b/src/test/ui/rustdoc/deny-invalid-doc-attrs.rs
new file mode 100644 (file)
index 0000000..02e9c67
--- /dev/null
@@ -0,0 +1,7 @@
+#![deny(invalid_doc_attributes)]
+//~^ NOTE defined here
+#![doc(x)]
+//~^ ERROR unknown `doc` attribute `x`
+//~| WARNING will become a hard error
+//~| NOTE see issue #82730
+fn main() {}
diff --git a/src/test/ui/rustdoc/deny-invalid-doc-attrs.stderr b/src/test/ui/rustdoc/deny-invalid-doc-attrs.stderr
new file mode 100644 (file)
index 0000000..a14ab8f
--- /dev/null
@@ -0,0 +1,16 @@
+error: unknown `doc` attribute `x`
+  --> $DIR/deny-invalid-doc-attrs.rs:3:8
+   |
+LL | #![doc(x)]
+   |        ^
+   |
+note: the lint level is defined here
+  --> $DIR/deny-invalid-doc-attrs.rs:1:9
+   |
+LL | #![deny(invalid_doc_attributes)]
+   |         ^^^^^^^^^^^^^^^^^^^^^^
+   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
+   = note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
+
+error: aborting due to previous error
+