]> git.lizzy.rs Git - rust.git/commitdiff
Fix intra-doc links for associated constants
authorJoshua Nelson <jyn514@gmail.com>
Sun, 30 Aug 2020 01:21:23 +0000 (21:21 -0400)
committerJoshua Nelson <jyn514@gmail.com>
Sun, 30 Aug 2020 01:37:08 +0000 (21:37 -0400)
Previously, only associated functions would be resolved.

src/librustdoc/passes/collect_intra_doc_links.rs
src/test/rustdoc/intra-link-prim-assoc.rs [new file with mode: 0644]

index 65d116b9c670c8d396252673def660394c62b839..412ab30a603b7fcfd9383f0a02dc6e9254ce64eb 100644 (file)
@@ -261,9 +261,10 @@ fn resolve(
                             ns,
                             impl_,
                         )
-                        .and_then(|item| match item.kind {
-                            ty::AssocKind::Fn => Some("method"),
-                            _ => None,
+                        .map(|item| match item.kind {
+                            ty::AssocKind::Fn => "method",
+                            ty::AssocKind::Const => "associatedconstant",
+                            ty::AssocKind::Type => "associatedtype",
                         })
                         .map(|out| (prim, Some(format!("{}#{}.{}", path, out, item_name))));
                     if let Some(link) = link {
diff --git a/src/test/rustdoc/intra-link-prim-assoc.rs b/src/test/rustdoc/intra-link-prim-assoc.rs
new file mode 100644 (file)
index 0000000..c006688
--- /dev/null
@@ -0,0 +1,5 @@
+// ignore-tidy-linelength
+#![deny(broken_intra_doc_links)]
+
+//! [i32::MAX]
+// @has intra_link_prim_assoc/index.html '//a[@href="https://doc.rust-lang.org/nightly/std/primitive.i32.html#associatedconstant.MAX"]' "i32::MAX"