summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc-ui
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rustdoc-ui')
-rw-r--r--tests/rustdoc-ui/doctest/failed-doctest-output-windows.stdout3
-rw-r--r--tests/rustdoc-ui/doctest/failed-doctest-output.stdout3
-rw-r--r--tests/rustdoc-ui/ice-bug-report-url.rs3
-rw-r--r--tests/rustdoc-ui/ice-bug-report-url.stderr5
-rw-r--r--tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.rs16
-rw-r--r--tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.stderr27
-rw-r--r--tests/rustdoc-ui/issue-110629-private-type-cycle-dyn.stderr1
-rw-r--r--tests/rustdoc-ui/lints/inline-doc-link.rs13
-rw-r--r--tests/rustdoc-ui/lints/invalid-doc-attr.rs15
-rw-r--r--tests/rustdoc-ui/lints/invalid-doc-attr.stderr49
-rw-r--r--tests/rustdoc-ui/lints/no-redundancy.rs7
-rw-r--r--tests/rustdoc-ui/lints/redundant_explicit_links-utf8.rs18
-rw-r--r--tests/rustdoc-ui/lints/redundant_explicit_links.fixed158
-rw-r--r--tests/rustdoc-ui/lints/redundant_explicit_links.rs158
-rw-r--r--tests/rustdoc-ui/lints/redundant_explicit_links.stderr1007
-rw-r--r--tests/rustdoc-ui/unescaped_backticks.rs1
-rw-r--r--tests/rustdoc-ui/unescaped_backticks.stderr128
17 files changed, 1536 insertions, 76 deletions
diff --git a/tests/rustdoc-ui/doctest/failed-doctest-output-windows.stdout b/tests/rustdoc-ui/doctest/failed-doctest-output-windows.stdout
index 6c147054d..f4bfb94e9 100644
--- a/tests/rustdoc-ui/doctest/failed-doctest-output-windows.stdout
+++ b/tests/rustdoc-ui/doctest/failed-doctest-output-windows.stdout
@@ -26,7 +26,8 @@ stdout 2
stderr:
stderr 1
stderr 2
-thread 'main' panicked at 'oh no', $DIR/failed-doctest-output-windows.rs:7:1
+thread 'main' panicked at $DIR/failed-doctest-output-windows.rs:7:1:
+oh no
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
diff --git a/tests/rustdoc-ui/doctest/failed-doctest-output.stdout b/tests/rustdoc-ui/doctest/failed-doctest-output.stdout
index 630198a56..840c9c508 100644
--- a/tests/rustdoc-ui/doctest/failed-doctest-output.stdout
+++ b/tests/rustdoc-ui/doctest/failed-doctest-output.stdout
@@ -26,7 +26,8 @@ stdout 2
stderr:
stderr 1
stderr 2
-thread 'main' panicked at 'oh no', $DIR/failed-doctest-output.rs:7:1
+thread 'main' panicked at $DIR/failed-doctest-output.rs:7:1:
+oh no
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
diff --git a/tests/rustdoc-ui/ice-bug-report-url.rs b/tests/rustdoc-ui/ice-bug-report-url.rs
index 8ede91cf8..a3fa819ab 100644
--- a/tests/rustdoc-ui/ice-bug-report-url.rs
+++ b/tests/rustdoc-ui/ice-bug-report-url.rs
@@ -1,11 +1,12 @@
// compile-flags: -Ztreat-err-as-bug
+// rustc-env:RUSTC_ICE=0
// failure-status: 101
// error-pattern: aborting due to
// error-pattern: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-rustdoc&template=ice.md
// normalize-stderr-test "note: compiler flags.*\n\n" -> ""
// normalize-stderr-test "note: rustc.*running on.*" -> "note: rustc {version} running on {platform}"
-// normalize-stderr-test "thread.*panicked at .*, compiler.*" -> "thread panicked at 'aborting due to `-Z treat-err-as-bug`'"
+// normalize-stderr-test "thread.*panicked at compiler.*" -> ""
// normalize-stderr-test " +\d{1,}: .*\n" -> ""
// normalize-stderr-test " + at .*\n" -> ""
// normalize-stderr-test ".*note: Some details are omitted.*\n" -> ""
diff --git a/tests/rustdoc-ui/ice-bug-report-url.stderr b/tests/rustdoc-ui/ice-bug-report-url.stderr
index 98c08b9a8..869fcd20f 100644
--- a/tests/rustdoc-ui/ice-bug-report-url.stderr
+++ b/tests/rustdoc-ui/ice-bug-report-url.stderr
@@ -1,10 +1,11 @@
error: expected one of `->`, `where`, or `{`, found `<eof>`
- --> $DIR/ice-bug-report-url.rs:13:10
+ --> $DIR/ice-bug-report-url.rs:14:10
|
LL | fn wrong()
| ^ expected one of `->`, `where`, or `{`
-thread panicked at 'aborting due to `-Z treat-err-as-bug`'
+
+aborting due to `-Z treat-err-as-bug=1`
stack backtrace:
error: the compiler unexpectedly panicked. this is a bug.
diff --git a/tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.rs b/tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.rs
new file mode 100644
index 000000000..f3f044f61
--- /dev/null
+++ b/tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.rs
@@ -0,0 +1,16 @@
+// Test that we don't ICE with broken links that don't show up in the docs.
+
+// check-pass
+// edition: 2021
+
+/// [1]
+//~^ WARN unresolved link to `1`
+//~| WARN unresolved link to `1`
+pub use {std, core};
+
+/// [2]
+pub use {};
+
+/// [3]
+//~^ WARN unresolved link to `3`
+pub extern crate alloc;
diff --git a/tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.stderr b/tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.stderr
new file mode 100644
index 000000000..83e0d3962
--- /dev/null
+++ b/tests/rustdoc-ui/intra-doc/broken-link-in-unused-doc-string.stderr
@@ -0,0 +1,27 @@
+warning: unresolved link to `3`
+ --> $DIR/broken-link-in-unused-doc-string.rs:14:6
+ |
+LL | /// [3]
+ | ^ no item named `3` in scope
+ |
+ = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
+ = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
+
+warning: unresolved link to `1`
+ --> $DIR/broken-link-in-unused-doc-string.rs:6:6
+ |
+LL | /// [1]
+ | ^ no item named `1` in scope
+ |
+ = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
+
+warning: unresolved link to `1`
+ --> $DIR/broken-link-in-unused-doc-string.rs:6:6
+ |
+LL | /// [1]
+ | ^ no item named `1` in scope
+ |
+ = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
+
+warning: 3 warnings emitted
+
diff --git a/tests/rustdoc-ui/issue-110629-private-type-cycle-dyn.stderr b/tests/rustdoc-ui/issue-110629-private-type-cycle-dyn.stderr
index 79e1b7531..9aeb3389e 100644
--- a/tests/rustdoc-ui/issue-110629-private-type-cycle-dyn.stderr
+++ b/tests/rustdoc-ui/issue-110629-private-type-cycle-dyn.stderr
@@ -19,6 +19,7 @@ LL | | fn bar<'a, 'b>(i: &'a i32) -> Bar<'a, 'b> {
LL | | assert!(bar(&meh) == bar(&muh));
LL | | }
| |_^
+ = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information
error: aborting due to previous error
diff --git a/tests/rustdoc-ui/lints/inline-doc-link.rs b/tests/rustdoc-ui/lints/inline-doc-link.rs
new file mode 100644
index 000000000..596f89be3
--- /dev/null
+++ b/tests/rustdoc-ui/lints/inline-doc-link.rs
@@ -0,0 +1,13 @@
+// Regression test for <https://github.com/rust-lang/rust/pull/113167>
+
+// check-pass
+#![deny(rustdoc::redundant_explicit_links)]
+
+mod m {
+ pub enum ValueEnum {}
+}
+mod m2 {
+ /// [`ValueEnum`]
+ pub use crate::m::ValueEnum;
+}
+pub use m2::ValueEnum;
diff --git a/tests/rustdoc-ui/lints/invalid-doc-attr.rs b/tests/rustdoc-ui/lints/invalid-doc-attr.rs
index c231e43b3..16b12cca5 100644
--- a/tests/rustdoc-ui/lints/invalid-doc-attr.rs
+++ b/tests/rustdoc-ui/lints/invalid-doc-attr.rs
@@ -1,5 +1,10 @@
#![crate_type = "lib"]
#![deny(warnings)]
+#![feature(doc_masked)]
+
+#![doc(masked)]
+//~^ ERROR this attribute can only be applied to an `extern crate` item
+//~| WARN is being phased out
#[doc(test(no_crate_inject))]
//~^ ERROR can only be applied at the crate level
@@ -30,3 +35,13 @@ pub mod bar {
//~^^ ERROR conflicting doc inlining attributes
//~| HELP remove one of the conflicting attributes
pub use bar::baz;
+
+#[doc(masked)]
+//~^ ERROR this attribute can only be applied to an `extern crate` item
+//~| WARN is being phased out
+pub struct Masked;
+
+#[doc(masked)]
+//~^ ERROR this attribute cannot be applied to an `extern crate self` item
+//~| WARN is being phased out
+pub extern crate self as reexport;
diff --git a/tests/rustdoc-ui/lints/invalid-doc-attr.stderr b/tests/rustdoc-ui/lints/invalid-doc-attr.stderr
index b23b8ded8..82ea33e1d 100644
--- a/tests/rustdoc-ui/lints/invalid-doc-attr.stderr
+++ b/tests/rustdoc-ui/lints/invalid-doc-attr.stderr
@@ -1,5 +1,5 @@
error: this attribute can only be applied at the crate level
- --> $DIR/invalid-doc-attr.rs:4:7
+ --> $DIR/invalid-doc-attr.rs:9:7
|
LL | #[doc(test(no_crate_inject))]
| ^^^^^^^^^^^^^^^^^^^^^
@@ -19,7 +19,7 @@ LL | #![doc(test(no_crate_inject))]
| +
error: this attribute can only be applied to a `use` item
- --> $DIR/invalid-doc-attr.rs:9:7
+ --> $DIR/invalid-doc-attr.rs:14:7
|
LL | #[doc(inline)]
| ^^^^^^ only applicable on `use` items
@@ -32,7 +32,7 @@ LL | pub fn foo() {}
= note: read <https://doc.rust-lang.org/nightly/rustdoc/the-doc-attribute.html#inline-and-no_inline> for more information
error: this attribute can only be applied at the crate level
- --> $DIR/invalid-doc-attr.rs:15:12
+ --> $DIR/invalid-doc-attr.rs:20:12
|
LL | #![doc(test(no_crate_inject))]
| ^^^^^^^^^^^^^^^^^^^^^
@@ -42,7 +42,7 @@ LL | #![doc(test(no_crate_inject))]
= note: read <https://doc.rust-lang.org/nightly/rustdoc/the-doc-attribute.html#at-the-crate-level> for more information
error: conflicting doc inlining attributes
- --> $DIR/invalid-doc-attr.rs:28:7
+ --> $DIR/invalid-doc-attr.rs:33:7
|
LL | #[doc(inline)]
| ^^^^^^ this attribute...
@@ -51,8 +51,43 @@ LL | #[doc(no_inline)]
|
= help: remove one of the conflicting attributes
+error: this attribute can only be applied to an `extern crate` item
+ --> $DIR/invalid-doc-attr.rs:39:7
+ |
+LL | #[doc(masked)]
+ | ^^^^^^ only applicable on `extern crate` items
+...
+LL | pub struct Masked;
+ | ----------------- not an `extern crate` item
+ |
+ = 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: read <https://doc.rust-lang.org/unstable-book/language-features/doc-masked.html> for more information
+
+error: this attribute cannot be applied to an `extern crate self` item
+ --> $DIR/invalid-doc-attr.rs:44:7
+ |
+LL | #[doc(masked)]
+ | ^^^^^^ not applicable on `extern crate self` items
+...
+LL | pub extern crate self as reexport;
+ | --------------------------------- `extern crate self` defined here
+ |
+ = 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: this attribute can only be applied to an `extern crate` item
+ --> $DIR/invalid-doc-attr.rs:5:8
+ |
+LL | #![doc(masked)]
+ | ^^^^^^ only applicable on `extern crate` items
+ |
+ = 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: read <https://doc.rust-lang.org/unstable-book/language-features/doc-masked.html> for more information
+
error: this attribute can only be applied at the crate level
- --> $DIR/invalid-doc-attr.rs:19:11
+ --> $DIR/invalid-doc-attr.rs:24:11
|
LL | #[doc(test(no_crate_inject))]
| ^^^^^^^^^^^^^^^^^^^^^
@@ -62,7 +97,7 @@ LL | #[doc(test(no_crate_inject))]
= note: read <https://doc.rust-lang.org/nightly/rustdoc/the-doc-attribute.html#at-the-crate-level> for more information
error: this attribute can only be applied to a `use` item
- --> $DIR/invalid-doc-attr.rs:22:11
+ --> $DIR/invalid-doc-attr.rs:27:11
|
LL | #[doc(inline)]
| ^^^^^^ only applicable on `use` items
@@ -74,5 +109,5 @@ LL | pub fn baz() {}
= note: for more information, see issue #82730 <https://github.com/rust-lang/rust/issues/82730>
= note: read <https://doc.rust-lang.org/nightly/rustdoc/the-doc-attribute.html#inline-and-no_inline> for more information
-error: aborting due to 6 previous errors
+error: aborting due to 9 previous errors
diff --git a/tests/rustdoc-ui/lints/no-redundancy.rs b/tests/rustdoc-ui/lints/no-redundancy.rs
new file mode 100644
index 000000000..e3358728b
--- /dev/null
+++ b/tests/rustdoc-ui/lints/no-redundancy.rs
@@ -0,0 +1,7 @@
+// check-pass
+
+#![deny(rustdoc::redundant_explicit_links)]
+
+/// [Vec][std::vec::Vec#examples] should not warn, because it's not actually redundant!
+/// [This is just an `Option`][std::option::Option] has different display content to actual link!
+pub fn func() {}
diff --git a/tests/rustdoc-ui/lints/redundant_explicit_links-utf8.rs b/tests/rustdoc-ui/lints/redundant_explicit_links-utf8.rs
new file mode 100644
index 000000000..fecefb7b2
--- /dev/null
+++ b/tests/rustdoc-ui/lints/redundant_explicit_links-utf8.rs
@@ -0,0 +1,18 @@
+// check-pass
+
+/// [`…foo`] [`…bar`] [`Err`]
+pub struct Broken {}
+
+/// [`…`] [`…`] [`Err`]
+pub struct Broken2 {}
+
+/// [`…`][…] [`…`][…] [`Err`]
+pub struct Broken3 {}
+
+/// […………………………][Broken3]
+pub struct Broken4 {}
+
+/// [Broken3][…………………………]
+pub struct Broken5 {}
+
+pub struct Err;
diff --git a/tests/rustdoc-ui/lints/redundant_explicit_links.fixed b/tests/rustdoc-ui/lints/redundant_explicit_links.fixed
new file mode 100644
index 000000000..900234e31
--- /dev/null
+++ b/tests/rustdoc-ui/lints/redundant_explicit_links.fixed
@@ -0,0 +1,158 @@
+// run-rustfix
+
+#![deny(rustdoc::redundant_explicit_links)]
+
+pub fn dummy_target() {}
+
+/// [dummy_target]
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`]
+//~^ ERROR redundant explicit link target
+///
+/// [Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`]
+//~^ ERROR redundant explicit link target
+/// [Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`]
+//~^ ERROR redundant explicit link target
+///
+/// [usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`]
+//~^ ERROR redundant explicit link target
+/// [usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`]
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`] TEXT
+//~^ ERROR redundant explicit link target
+pub fn should_warn_inline() {}
+
+/// [`Vec<T>`](Vec)
+/// [`Vec<T>`](std::vec::Vec)
+pub fn should_not_warn_inline() {}
+
+/// [dummy_target]
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`]
+//~^ ERROR redundant explicit link target
+///
+/// [Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`]
+//~^ ERROR redundant explicit link target
+/// [Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`]
+//~^ ERROR redundant explicit link target
+///
+/// [usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`]
+//~^ ERROR redundant explicit link target
+/// [usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`]
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`] TEXT
+//~^ ERROR redundant explicit link target
+pub fn should_warn_reference_unknown() {}
+
+/// [`Vec<T>`][Vec]
+/// [`Vec<T>`][std::vec::Vec]
+pub fn should_not_warn_reference_unknown() {}
+
+/// [dummy_target]
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`]
+//~^ ERROR redundant explicit link target
+///
+/// [Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`]
+//~^ ERROR redundant explicit link target
+/// [Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`]
+//~^ ERROR redundant explicit link target
+///
+/// [usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`]
+//~^ ERROR redundant explicit link target
+/// [usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`]
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`] TEXT
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target]: dummy_target
+/// [Vec]: Vec
+/// [std::vec::Vec]: Vec
+/// [usize]: usize
+/// [std::primitive::usize]: usize
+pub fn should_warn_reference() {}
+
+/// [`Vec<T>`]: Vec
+/// [`Vec<T>`]: std::vec::Vec
+pub fn should_not_warn_reference() {}
diff --git a/tests/rustdoc-ui/lints/redundant_explicit_links.rs b/tests/rustdoc-ui/lints/redundant_explicit_links.rs
new file mode 100644
index 000000000..13feb85e0
--- /dev/null
+++ b/tests/rustdoc-ui/lints/redundant_explicit_links.rs
@@ -0,0 +1,158 @@
+// run-rustfix
+
+#![deny(rustdoc::redundant_explicit_links)]
+
+pub fn dummy_target() {}
+
+/// [dummy_target](dummy_target)
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`](dummy_target)
+//~^ ERROR redundant explicit link target
+///
+/// [Vec](Vec)
+//~^ ERROR redundant explicit link target
+/// [`Vec`](Vec)
+//~^ ERROR redundant explicit link target
+/// [Vec](std::vec::Vec)
+//~^ ERROR redundant explicit link target
+/// [`Vec`](std::vec::Vec)
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec](Vec)
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`](Vec)
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec](std::vec::Vec)
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`](std::vec::Vec)
+//~^ ERROR redundant explicit link target
+///
+/// [usize](usize)
+//~^ ERROR redundant explicit link target
+/// [`usize`](usize)
+//~^ ERROR redundant explicit link target
+/// [usize](std::primitive::usize)
+//~^ ERROR redundant explicit link target
+/// [`usize`](std::primitive::usize)
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize](usize)
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`](usize)
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize](std::primitive::usize)
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`](std::primitive::usize)
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target](dummy_target) TEXT
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`](dummy_target) TEXT
+//~^ ERROR redundant explicit link target
+pub fn should_warn_inline() {}
+
+/// [`Vec<T>`](Vec)
+/// [`Vec<T>`](std::vec::Vec)
+pub fn should_not_warn_inline() {}
+
+/// [dummy_target][dummy_target]
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`][dummy_target]
+//~^ ERROR redundant explicit link target
+///
+/// [Vec][Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`][Vec]
+//~^ ERROR redundant explicit link target
+/// [Vec][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec][Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`][Vec]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+///
+/// [usize][usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`][usize]
+//~^ ERROR redundant explicit link target
+/// [usize][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize][usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`][usize]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target][dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`][dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+pub fn should_warn_reference_unknown() {}
+
+/// [`Vec<T>`][Vec]
+/// [`Vec<T>`][std::vec::Vec]
+pub fn should_not_warn_reference_unknown() {}
+
+/// [dummy_target][dummy_target]
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`][dummy_target]
+//~^ ERROR redundant explicit link target
+///
+/// [Vec][Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`][Vec]
+//~^ ERROR redundant explicit link target
+/// [Vec][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`Vec`][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec][Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`][Vec]
+//~^ ERROR redundant explicit link target
+/// [std::vec::Vec][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+/// [`std::vec::Vec`][std::vec::Vec]
+//~^ ERROR redundant explicit link target
+///
+/// [usize][usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`][usize]
+//~^ ERROR redundant explicit link target
+/// [usize][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`usize`][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize][usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`][usize]
+//~^ ERROR redundant explicit link target
+/// [std::primitive::usize][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+/// [`std::primitive::usize`][std::primitive::usize]
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target][dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+/// [`dummy_target`][dummy_target] TEXT
+//~^ ERROR redundant explicit link target
+///
+/// [dummy_target]: dummy_target
+/// [Vec]: Vec
+/// [std::vec::Vec]: Vec
+/// [usize]: usize
+/// [std::primitive::usize]: usize
+pub fn should_warn_reference() {}
+
+/// [`Vec<T>`]: Vec
+/// [`Vec<T>`]: std::vec::Vec
+pub fn should_not_warn_reference() {}
diff --git a/tests/rustdoc-ui/lints/redundant_explicit_links.stderr b/tests/rustdoc-ui/lints/redundant_explicit_links.stderr
new file mode 100644
index 000000000..34ec9be66
--- /dev/null
+++ b/tests/rustdoc-ui/lints/redundant_explicit_links.stderr
@@ -0,0 +1,1007 @@
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:7:20
+ |
+LL | /// [dummy_target](dummy_target)
+ | ------------ ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+note: the lint level is defined here
+ --> $DIR/redundant_explicit_links.rs:3:9
+ |
+LL | #![deny(rustdoc::redundant_explicit_links)]
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+help: remove explicit link target
+ |
+LL | /// [dummy_target]
+ | ~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:9:22
+ |
+LL | /// [`dummy_target`](dummy_target)
+ | -------------- ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`dummy_target`]
+ | ~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:12:11
+ |
+LL | /// [Vec](Vec)
+ | --- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [Vec]
+ | ~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:14:13
+ |
+LL | /// [`Vec`](Vec)
+ | ----- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`Vec`]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:16:11
+ |
+LL | /// [Vec](std::vec::Vec)
+ | --- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [Vec]
+ | ~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:18:13
+ |
+LL | /// [`Vec`](std::vec::Vec)
+ | ----- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`Vec`]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:20:21
+ |
+LL | /// [std::vec::Vec](Vec)
+ | ------------- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::vec::Vec]
+ | ~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:22:23
+ |
+LL | /// [`std::vec::Vec`](Vec)
+ | --------------- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::vec::Vec`]
+ | ~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:24:21
+ |
+LL | /// [std::vec::Vec](std::vec::Vec)
+ | ------------- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::vec::Vec]
+ | ~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:26:23
+ |
+LL | /// [`std::vec::Vec`](std::vec::Vec)
+ | --------------- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::vec::Vec`]
+ | ~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:29:13
+ |
+LL | /// [usize](usize)
+ | ----- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [usize]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:31:15
+ |
+LL | /// [`usize`](usize)
+ | ------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`usize`]
+ | ~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:33:13
+ |
+LL | /// [usize](std::primitive::usize)
+ | ----- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [usize]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:35:15
+ |
+LL | /// [`usize`](std::primitive::usize)
+ | ------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`usize`]
+ | ~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:37:29
+ |
+LL | /// [std::primitive::usize](usize)
+ | --------------------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::primitive::usize]
+ | ~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:39:31
+ |
+LL | /// [`std::primitive::usize`](usize)
+ | ----------------------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::primitive::usize`]
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:41:29
+ |
+LL | /// [std::primitive::usize](std::primitive::usize)
+ | --------------------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::primitive::usize]
+ | ~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:43:31
+ |
+LL | /// [`std::primitive::usize`](std::primitive::usize)
+ | ----------------------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::primitive::usize`]
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:46:20
+ |
+LL | /// [dummy_target](dummy_target) TEXT
+ | ------------ ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [dummy_target] TEXT
+ | ~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:48:22
+ |
+LL | /// [`dummy_target`](dummy_target) TEXT
+ | -------------- ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`dummy_target`] TEXT
+ | ~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:56:20
+ |
+LL | /// [dummy_target][dummy_target]
+ | ------------ ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [dummy_target]
+ | ~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:58:22
+ |
+LL | /// [`dummy_target`][dummy_target]
+ | -------------- ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`dummy_target`]
+ | ~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:61:11
+ |
+LL | /// [Vec][Vec]
+ | --- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [Vec]
+ | ~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:63:13
+ |
+LL | /// [`Vec`][Vec]
+ | ----- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`Vec`]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:65:11
+ |
+LL | /// [Vec][std::vec::Vec]
+ | --- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [Vec]
+ | ~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:67:13
+ |
+LL | /// [`Vec`][std::vec::Vec]
+ | ----- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`Vec`]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:69:21
+ |
+LL | /// [std::vec::Vec][Vec]
+ | ------------- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::vec::Vec]
+ | ~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:71:23
+ |
+LL | /// [`std::vec::Vec`][Vec]
+ | --------------- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::vec::Vec`]
+ | ~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:73:21
+ |
+LL | /// [std::vec::Vec][std::vec::Vec]
+ | ------------- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::vec::Vec]
+ | ~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:75:23
+ |
+LL | /// [`std::vec::Vec`][std::vec::Vec]
+ | --------------- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::vec::Vec`]
+ | ~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:78:13
+ |
+LL | /// [usize][usize]
+ | ----- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [usize]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:80:15
+ |
+LL | /// [`usize`][usize]
+ | ------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`usize`]
+ | ~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:82:13
+ |
+LL | /// [usize][std::primitive::usize]
+ | ----- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [usize]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:84:15
+ |
+LL | /// [`usize`][std::primitive::usize]
+ | ------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`usize`]
+ | ~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:86:29
+ |
+LL | /// [std::primitive::usize][usize]
+ | --------------------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::primitive::usize]
+ | ~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:88:31
+ |
+LL | /// [`std::primitive::usize`][usize]
+ | ----------------------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::primitive::usize`]
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:90:29
+ |
+LL | /// [std::primitive::usize][std::primitive::usize]
+ | --------------------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::primitive::usize]
+ | ~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:92:31
+ |
+LL | /// [`std::primitive::usize`][std::primitive::usize]
+ | ----------------------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::primitive::usize`]
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:95:20
+ |
+LL | /// [dummy_target][dummy_target] TEXT
+ | ------------ ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [dummy_target] TEXT
+ | ~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:97:22
+ |
+LL | /// [`dummy_target`][dummy_target] TEXT
+ | -------------- ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`dummy_target`] TEXT
+ | ~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:105:20
+ |
+LL | /// [dummy_target][dummy_target]
+ | ------------ ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:149:21
+ |
+LL | /// [dummy_target]: dummy_target
+ | ^^^^^^^^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [dummy_target]
+ | ~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:107:22
+ |
+LL | /// [`dummy_target`][dummy_target]
+ | -------------- ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:149:21
+ |
+LL | /// [dummy_target]: dummy_target
+ | ^^^^^^^^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`dummy_target`]
+ | ~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:110:11
+ |
+LL | /// [Vec][Vec]
+ | --- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:150:12
+ |
+LL | /// [Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [Vec]
+ | ~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:112:13
+ |
+LL | /// [`Vec`][Vec]
+ | ----- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:150:12
+ |
+LL | /// [Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`Vec`]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:114:11
+ |
+LL | /// [Vec][std::vec::Vec]
+ | --- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:151:22
+ |
+LL | /// [std::vec::Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [Vec]
+ | ~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:116:13
+ |
+LL | /// [`Vec`][std::vec::Vec]
+ | ----- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:151:22
+ |
+LL | /// [std::vec::Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`Vec`]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:118:21
+ |
+LL | /// [std::vec::Vec][Vec]
+ | ------------- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:150:12
+ |
+LL | /// [Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::vec::Vec]
+ | ~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:120:23
+ |
+LL | /// [`std::vec::Vec`][Vec]
+ | --------------- ^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:150:12
+ |
+LL | /// [Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::vec::Vec`]
+ | ~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:122:21
+ |
+LL | /// [std::vec::Vec][std::vec::Vec]
+ | ------------- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:151:22
+ |
+LL | /// [std::vec::Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::vec::Vec]
+ | ~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:124:23
+ |
+LL | /// [`std::vec::Vec`][std::vec::Vec]
+ | --------------- ^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:151:22
+ |
+LL | /// [std::vec::Vec]: Vec
+ | ^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::vec::Vec`]
+ | ~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:127:13
+ |
+LL | /// [usize][usize]
+ | ----- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:152:14
+ |
+LL | /// [usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [usize]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:129:15
+ |
+LL | /// [`usize`][usize]
+ | ------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:152:14
+ |
+LL | /// [usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`usize`]
+ | ~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:131:13
+ |
+LL | /// [usize][std::primitive::usize]
+ | ----- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:153:30
+ |
+LL | /// [std::primitive::usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [usize]
+ | ~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:133:15
+ |
+LL | /// [`usize`][std::primitive::usize]
+ | ------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:153:30
+ |
+LL | /// [std::primitive::usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`usize`]
+ | ~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:135:29
+ |
+LL | /// [std::primitive::usize][usize]
+ | --------------------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:152:14
+ |
+LL | /// [usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::primitive::usize]
+ | ~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:137:31
+ |
+LL | /// [`std::primitive::usize`][usize]
+ | ----------------------- ^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:152:14
+ |
+LL | /// [usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::primitive::usize`]
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:139:29
+ |
+LL | /// [std::primitive::usize][std::primitive::usize]
+ | --------------------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:153:30
+ |
+LL | /// [std::primitive::usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [std::primitive::usize]
+ | ~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:141:31
+ |
+LL | /// [`std::primitive::usize`][std::primitive::usize]
+ | ----------------------- ^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:153:30
+ |
+LL | /// [std::primitive::usize]: usize
+ | ^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`std::primitive::usize`]
+ | ~~~~~~~~~~~~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:144:20
+ |
+LL | /// [dummy_target][dummy_target] TEXT
+ | ------------ ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:149:21
+ |
+LL | /// [dummy_target]: dummy_target
+ | ^^^^^^^^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [dummy_target] TEXT
+ | ~~~~~~~~~~~~~~
+
+error: redundant explicit link target
+ --> $DIR/redundant_explicit_links.rs:146:22
+ |
+LL | /// [`dummy_target`][dummy_target] TEXT
+ | -------------- ^^^^^^^^^^^^ explicit target is redundant
+ | |
+ | because label contains path that resolves to same destination
+ |
+note: referenced explicit link target defined here
+ --> $DIR/redundant_explicit_links.rs:149:21
+ |
+LL | /// [dummy_target]: dummy_target
+ | ^^^^^^^^^^^^
+ = note: when a link's destination is not specified,
+ the label is used to resolve intra-doc links
+help: remove explicit link target
+ |
+LL | /// [`dummy_target`] TEXT
+ | ~~~~~~~~~~~~~~~~
+
+error: aborting due to 60 previous errors
+
diff --git a/tests/rustdoc-ui/unescaped_backticks.rs b/tests/rustdoc-ui/unescaped_backticks.rs
index e99cd1f3d..e960e9f59 100644
--- a/tests/rustdoc-ui/unescaped_backticks.rs
+++ b/tests/rustdoc-ui/unescaped_backticks.rs
@@ -1,6 +1,7 @@
#![deny(rustdoc::unescaped_backticks)]
#![allow(rustdoc::broken_intra_doc_links)]
#![allow(rustdoc::invalid_html_tags)]
+#![allow(rustdoc::redundant_explicit_links)]
///
pub fn empty() {}
diff --git a/tests/rustdoc-ui/unescaped_backticks.stderr b/tests/rustdoc-ui/unescaped_backticks.stderr
index bf1f18889..83822f778 100644
--- a/tests/rustdoc-ui/unescaped_backticks.stderr
+++ b/tests/rustdoc-ui/unescaped_backticks.stderr
@@ -1,5 +1,5 @@
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:186:70
+ --> $DIR/unescaped_backticks.rs:187:70
|
LL | /// if you want your MIR to be modified by the full MIR pipeline, or `#![custom_mir(dialect =
| ^
@@ -19,7 +19,7 @@ LL | /// if you want your MIR to be modified by the full MIR pipeline, or \`#![c
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:231:13
+ --> $DIR/unescaped_backticks.rs:232:13
|
LL | //! `#![rustc_expected_cgu_reuse(module="spike", cfg="rpass2", kind="post-lto")]
| ^
@@ -34,7 +34,7 @@ LL | //! \`#![rustc_expected_cgu_reuse(module="spike", cfg="rpass2", kin
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:236:13
+ --> $DIR/unescaped_backticks.rs:237:13
|
LL | /// `cfg=...
| ^
@@ -49,7 +49,7 @@ LL | /// \`cfg=...
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:240:42
+ --> $DIR/unescaped_backticks.rs:241:42
|
LL | /// `cfg=... and not `#[cfg_attr]`
| ^
@@ -64,7 +64,7 @@ LL | /// `cfg=... and not `#[cfg_attr]\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:192:91
+ --> $DIR/unescaped_backticks.rs:193:91
|
LL | /// Constructs a `TyKind::Error` type and registers a `delay_span_bug` with the given `msg to
| ^
@@ -79,7 +79,7 @@ LL | /// Constructs a `TyKind::Error` type and registers a `delay_span_bug`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:201:34
+ --> $DIR/unescaped_backticks.rs:202:34
|
LL | /// in `nt_to_tokenstream`
| ^
@@ -94,7 +94,7 @@ LL | /// in `nt_to_tokenstream\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:207:62
+ --> $DIR/unescaped_backticks.rs:208:62
|
LL | /// that `Option<Symbol>` only takes up 4 bytes, because `newtype_index! reserves
| ^
@@ -109,7 +109,7 @@ LL | /// that `Option<Symbol>` only takes up 4 bytes, because \`newtype_inde
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:215:52
+ --> $DIR/unescaped_backticks.rs:216:52
|
LL | /// also avoids the need to import `OpenOptions`.
| ^
@@ -124,7 +124,7 @@ LL | /// also avoids the need to import `OpenOptions\`.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:220:46
+ --> $DIR/unescaped_backticks.rs:221:46
|
LL | /// `HybridBitSet`. Has no effect if `row` does not exist.
| ^
@@ -139,7 +139,7 @@ LL | /// `HybridBitSet`. Has no effect if `row\` does not exist.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:246:12
+ --> $DIR/unescaped_backticks.rs:247:12
|
LL | /// RWU`s can get very large, so it uses a more compact representation.
| ^
@@ -154,7 +154,7 @@ LL | /// RWU\`s can get very large, so it uses a more compact representation
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:253:15
+ --> $DIR/unescaped_backticks.rs:254:15
|
LL | /// in `U2`.
| ^
@@ -169,7 +169,7 @@ LL | /// in `U2\`.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:270:42
+ --> $DIR/unescaped_backticks.rs:271:42
|
LL | /// because it contains `[type error]`. Yuck! (See issue #29857 for
| ^
@@ -184,7 +184,7 @@ LL | /// because it contains `[type error]\`. Yuck! (See issue #29857 for
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:280:53
+ --> $DIR/unescaped_backticks.rs:281:53
|
LL | /// well as the second instance of `A: AutoTrait`) to suppress
| ^
@@ -199,7 +199,7 @@ LL | /// well as the second instance of `A: AutoTrait\`) to suppress
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:290:40
+ --> $DIR/unescaped_backticks.rs:291:40
|
LL | /// `'a` with `'b` and not `'static`. But it will have to do for
| ^
@@ -211,7 +211,7 @@ LL | /// `'a` with `'b` and not `'static\`. But it will have to do for
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:299:54
+ --> $DIR/unescaped_backticks.rs:300:54
|
LL | /// `None`. Otherwise, it will return `Some(Dispatch)`.
| ^
@@ -226,7 +226,7 @@ LL | /// `None`. Otherwise, it will return `Some(Dispatch)\`.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:303:13
+ --> $DIR/unescaped_backticks.rs:304:13
|
LL | /// or `None` if it isn't.
| ^
@@ -238,7 +238,7 @@ LL | /// or `None\` if it isn't.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:307:14
+ --> $DIR/unescaped_backticks.rs:308:14
|
LL | /// `on_event` should be called.
| ^
@@ -253,7 +253,7 @@ LL | /// `on_event\` should be called.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:312:29
+ --> $DIR/unescaped_backticks.rs:313:29
|
LL | /// [`rebuild_interest_cache`][rebuild] is called after the value of the max
| ^
@@ -268,7 +268,7 @@ LL | /// [`rebuild_interest_cache\`][rebuild] is called after the value of the m
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:322:5
+ --> $DIR/unescaped_backticks.rs:323:5
|
LL | / /// The Subscriber` may be accessed by calling [`WeakDispatch::upgrade`],
LL | |
@@ -287,7 +287,7 @@ LL | | /// level changes.
to this: `None`. Otherwise, it will return `Some(Dispatch)\`.
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:322:5
+ --> $DIR/unescaped_backticks.rs:323:5
|
LL | / /// The Subscriber` may be accessed by calling [`WeakDispatch::upgrade`],
LL | |
@@ -304,7 +304,7 @@ LL | | /// level changes.
to this: or `None\` if it isn't.
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:322:5
+ --> $DIR/unescaped_backticks.rs:323:5
|
LL | / /// The Subscriber` may be accessed by calling [`WeakDispatch::upgrade`],
LL | |
@@ -323,7 +323,7 @@ LL | | /// level changes.
to this: `on_event\` should be called.
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:322:5
+ --> $DIR/unescaped_backticks.rs:323:5
|
LL | / /// The Subscriber` may be accessed by calling [`WeakDispatch::upgrade`],
LL | |
@@ -342,7 +342,7 @@ LL | | /// level changes.
to this: [`rebuild_interest_cache\`][rebuild] is called after the value of the max
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:348:56
+ --> $DIR/unescaped_backticks.rs:349:56
|
LL | /// instead and use [`CloneCounterObserver::counter`] to increment.
| ^
@@ -354,7 +354,7 @@ LL | /// instead and use [`CloneCounterObserver::counter\`] to increment.
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:11:5
+ --> $DIR/unescaped_backticks.rs:12:5
|
LL | /// `
| ^
@@ -366,7 +366,7 @@ LL | /// \`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:18:7
+ --> $DIR/unescaped_backticks.rs:19:7
|
LL | /// \`
| ^
@@ -381,7 +381,7 @@ LL | /// \\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:25:6
+ --> $DIR/unescaped_backticks.rs:26:6
|
LL | /// [`link1]
| ^
@@ -396,7 +396,7 @@ LL | /// [\`link1]
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:29:11
+ --> $DIR/unescaped_backticks.rs:30:11
|
LL | /// [link2`]
| ^
@@ -411,7 +411,7 @@ LL | /// [link2\`]
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:33:6
+ --> $DIR/unescaped_backticks.rs:34:6
|
LL | /// [`link_long](link_long)
| ^
@@ -426,7 +426,7 @@ LL | /// [\`link_long](link_long)
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:37:6
+ --> $DIR/unescaped_backticks.rs:38:6
|
LL | /// [`broken-link]
| ^
@@ -441,7 +441,7 @@ LL | /// [\`broken-link]
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:44:8
+ --> $DIR/unescaped_backticks.rs:45:8
|
LL | /// <x:`>
| ^
@@ -456,7 +456,7 @@ LL | /// <x:\`>
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:54:6
+ --> $DIR/unescaped_backticks.rs:55:6
|
LL | /// 🦀`🦀
| ^
@@ -475,7 +475,7 @@ LL | /// 🦀\`🦀
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:58:5
+ --> $DIR/unescaped_backticks.rs:59:5
|
LL | /// `foo(
| ^
@@ -490,7 +490,7 @@ LL | /// \`foo(
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:64:14
+ --> $DIR/unescaped_backticks.rs:65:14
|
LL | /// `foo `bar`
| ^
@@ -505,7 +505,7 @@ LL | /// `foo `bar\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:70:5
+ --> $DIR/unescaped_backticks.rs:71:5
|
LL | /// `foo(
| ^
@@ -520,7 +520,7 @@ LL | /// \`foo(
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:75:83
+ --> $DIR/unescaped_backticks.rs:76:83
|
LL | /// Addition is commutative, which means that add(a, b)` is the same as `add(b, a)`.
| ^
@@ -535,7 +535,7 @@ LL | /// Addition is commutative, which means that add(a, b)` is the same as `ad
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:79:51
+ --> $DIR/unescaped_backticks.rs:80:51
|
LL | /// or even to add a number `n` to 42 (`add(42, b)`)!
| ^
@@ -550,7 +550,7 @@ LL | /// or even to add a number `n` to 42 (`add(42, b)\`)!
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:83:83
+ --> $DIR/unescaped_backticks.rs:84:83
|
LL | /// Addition is commutative, which means that `add(a, b) is the same as `add(b, a)`.
| ^
@@ -565,7 +565,7 @@ LL | /// Addition is commutative, which means that `add(a, b) is the same as `ad
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:87:51
+ --> $DIR/unescaped_backticks.rs:88:51
|
LL | /// or even to add a number `n` to 42 (`add(42, n)`)!
| ^
@@ -580,7 +580,7 @@ LL | /// or even to add a number `n` to 42 (`add(42, n)\`)!
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:91:83
+ --> $DIR/unescaped_backticks.rs:92:83
|
LL | /// Addition is commutative, which means that `add(a, b)` is the same as add(b, a)`.
| ^
@@ -595,7 +595,7 @@ LL | /// Addition is commutative, which means that `add(a, b)` is the same as ad
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:95:50
+ --> $DIR/unescaped_backticks.rs:96:50
|
LL | /// or even to add a number `n` to 42 (add(42, n)`)!
| ^
@@ -610,7 +610,7 @@ LL | /// or even to add a number `n` to 42 (add(42, n)\`)!
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:99:74
+ --> $DIR/unescaped_backticks.rs:100:74
|
LL | /// Addition is commutative, which means that `add(a, b)` is the same as `add(b, a).
| ^
@@ -625,7 +625,7 @@ LL | /// Addition is commutative, which means that `add(a, b)` is the same as \`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:103:51
+ --> $DIR/unescaped_backticks.rs:104:51
|
LL | /// or even to add a number `n` to 42 (`add(42, n)`)!
| ^
@@ -640,7 +640,7 @@ LL | /// or even to add a number `n` to 42 (`add(42, n)\`)!
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:107:1
+ --> $DIR/unescaped_backticks.rs:108:1
|
LL | #[doc = "`"]
| ^^^^^^^^^^^^
@@ -651,7 +651,7 @@ LL | #[doc = "`"]
to this: \`
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:114:1
+ --> $DIR/unescaped_backticks.rs:115:1
|
LL | #[doc = concat!("\\", "`")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -664,7 +664,7 @@ LL | #[doc = concat!("\\", "`")]
to this: \\`
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:118:1
+ --> $DIR/unescaped_backticks.rs:119:1
|
LL | #[doc = "Addition is commutative, which means that add(a, b)` is the same as `add(b, a)`."]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -677,7 +677,7 @@ LL | #[doc = "Addition is commutative, which means that add(a, b)` is the same a
to this: Addition is commutative, which means that add(a, b)` is the same as `add(b, a)\`.
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:122:1
+ --> $DIR/unescaped_backticks.rs:123:1
|
LL | #[doc = "Addition is commutative, which means that `add(a, b) is the same as `add(b, a)`."]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -690,7 +690,7 @@ LL | #[doc = "Addition is commutative, which means that `add(a, b) is the same a
to this: Addition is commutative, which means that `add(a, b) is the same as `add(b, a)\`.
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:126:1
+ --> $DIR/unescaped_backticks.rs:127:1
|
LL | #[doc = "Addition is commutative, which means that `add(a, b)` is the same as add(b, a)`."]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -703,7 +703,7 @@ LL | #[doc = "Addition is commutative, which means that `add(a, b)` is the same
to this: Addition is commutative, which means that `add(a, b)` is the same as add(b, a)\`.
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:130:1
+ --> $DIR/unescaped_backticks.rs:131:1
|
LL | #[doc = "Addition is commutative, which means that `add(a, b)` is the same as `add(b, a)."]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -716,7 +716,7 @@ LL | #[doc = "Addition is commutative, which means that `add(a, b)` is the same
to this: Addition is commutative, which means that `add(a, b)` is the same as \`add(b, a).
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:135:5
+ --> $DIR/unescaped_backticks.rs:136:5
|
LL | /// `foo
| ^
@@ -731,7 +731,7 @@ LL | /// \`foo
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:139:7
+ --> $DIR/unescaped_backticks.rs:140:7
|
LL | /// # `(heading
| ^
@@ -746,7 +746,7 @@ LL | /// # \`(heading
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:141:17
+ --> $DIR/unescaped_backticks.rs:142:17
|
LL | /// ## heading2)`
| ^
@@ -761,7 +761,7 @@ LL | /// ## heading2)\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:144:11
+ --> $DIR/unescaped_backticks.rs:145:11
|
LL | /// multi `(
| ^
@@ -776,7 +776,7 @@ LL | /// multi \`(
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:150:10
+ --> $DIR/unescaped_backticks.rs:151:10
|
LL | /// para)`(graph
| ^
@@ -795,7 +795,7 @@ LL | /// para)\`(graph
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:153:10
+ --> $DIR/unescaped_backticks.rs:154:10
|
LL | /// para)`(graph2
| ^
@@ -814,7 +814,7 @@ LL | /// para)\`(graph2
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:156:12
+ --> $DIR/unescaped_backticks.rs:157:12
|
LL | /// 1. foo)`
| ^
@@ -829,7 +829,7 @@ LL | /// 1. foo)\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:158:8
+ --> $DIR/unescaped_backticks.rs:159:8
|
LL | /// 2. `(bar
| ^
@@ -844,7 +844,7 @@ LL | /// 2. \`(bar
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:160:11
+ --> $DIR/unescaped_backticks.rs:161:11
|
LL | /// * baz)`
| ^
@@ -859,7 +859,7 @@ LL | /// * baz)\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:162:7
+ --> $DIR/unescaped_backticks.rs:163:7
|
LL | /// * `(quux
| ^
@@ -874,7 +874,7 @@ LL | /// * \`(quux
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:165:5
+ --> $DIR/unescaped_backticks.rs:166:5
|
LL | /// `#![this_is_actually_an_image(and(not), an = "attribute")]
| ^
@@ -889,7 +889,7 @@ LL | /// \`#![this_is_actually_an_image(and(not), an = "attribute")]
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:168:62
+ --> $DIR/unescaped_backticks.rs:169:62
|
LL | /// #![this_is_actually_an_image(and(not), an = "attribute")]`
| ^
@@ -904,7 +904,7 @@ LL | /// #![this_is_actually_an_image(and(not), an = "attribute")]\`
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:173:7
+ --> $DIR/unescaped_backticks.rs:174:7
|
LL | /// | `table( | )head` |
| ^
@@ -919,7 +919,7 @@ LL | /// | \`table( | )head` |
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:173:22
+ --> $DIR/unescaped_backticks.rs:174:22
|
LL | /// | `table( | )head` |
| ^
@@ -934,7 +934,7 @@ LL | /// | `table( | )head\` |
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:177:12
+ --> $DIR/unescaped_backticks.rs:178:12
|
LL | /// | table`( | )`body |
| ^
@@ -949,7 +949,7 @@ LL | /// | table\`( | )`body |
| +
error: unescaped backtick
- --> $DIR/unescaped_backticks.rs:177:18
+ --> $DIR/unescaped_backticks.rs:178:18
|
LL | /// | table`( | )`body |
| ^