about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2024-12-17 17:32:11 +0100
committerGuillaume Gomez <guillaume1.gomez@gmail.com>2024-12-17 17:32:11 +0100
commita01de760bbcbbdf6935f0cd82107d48529c48138 (patch)
treede596d05eddb7c4162b75c81716dea1fd82aaf41
parentd03380957bf92412d48daac92966ff5129358d59 (diff)
downloadrust-a01de760bbcbbdf6935f0cd82107d48529c48138.tar.gz
rust-a01de760bbcbbdf6935f0cd82107d48529c48138.zip
Add regression test for #132208
-rw-r--r--tests/rustdoc/intra-doc/link-in-footnotes-132208.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/rustdoc/intra-doc/link-in-footnotes-132208.rs b/tests/rustdoc/intra-doc/link-in-footnotes-132208.rs
new file mode 100644
index 00000000000..c9b97eafd2f
--- /dev/null
+++ b/tests/rustdoc/intra-doc/link-in-footnotes-132208.rs
@@ -0,0 +1,24 @@
+// Rustdoc has multiple passes and if the footnote pass is run before the link replacer
+// one, intra doc links are not generated inside footnote definitions. This test
+// therefore ensures that intra-doc link are correctly generated inside footnote
+// definitions.
+//
+// Regression test for <https://github.com/rust-lang/rust/issues/132208>.
+
+#![crate_name = "foo"]
+
+//@ has 'foo/index.html'
+//@ has - '//*[@class="docblock"]//a[@href="struct.Bar.html"]' 'a'
+//@ has - '//*[@class="docblock"]//*[@class="footnotes"]//a[@href="struct.Foo.html"]' 'b'
+
+//! [a]: crate::Bar
+//! [b]: crate::Foo
+//!
+//! link in body: [a]
+//!
+//! see footnote[^1]
+//!
+//! [^1]: link in footnote: [b]
+
+pub struct Bar;
+pub struct Foo;