about summary refs log tree commit diff
diff options
context:
space:
mode:
authorHannah McLaughlin <h@mcla.ug>2020-11-15 20:45:52 +0000
committerHannah McLaughlin <h@mcla.ug>2020-11-18 21:20:51 +0000
commit071d8b14dab01f636aa4c8ec707a59a00bfa356d (patch)
treefc294dfe7eed32bb40d2bad9e0d133cf2567f2a1
parent8d2d0014922e9f541694bfe87642749239990e0e (diff)
downloadrust-071d8b14dab01f636aa4c8ec707a59a00bfa356d.tar.gz
rust-071d8b14dab01f636aa4c8ec707a59a00bfa356d.zip
Fix rustdoc: Referencing methods on extern_types does not resolve #78777: handle DefKind::ForeignTy variant
-rw-r--r--src/librustdoc/passes/collect_intra_doc_links.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/librustdoc/passes/collect_intra_doc_links.rs b/src/librustdoc/passes/collect_intra_doc_links.rs
index 895414b1d7e..fd09ba04b3d 100644
--- a/src/librustdoc/passes/collect_intra_doc_links.rs
+++ b/src/librustdoc/passes/collect_intra_doc_links.rs
@@ -492,7 +492,14 @@ impl<'a, 'tcx> LinkCollector<'a, 'tcx> {
             Res::PrimTy(prim) => Some(
                 self.resolve_primitive_associated_item(prim, ns, module_id, item_name, item_str),
             ),
-            Res::Def(DefKind::Struct | DefKind::Union | DefKind::Enum | DefKind::TyAlias, did) => {
+            Res::Def(
+                DefKind::Struct
+                | DefKind::Union
+                | DefKind::Enum
+                | DefKind::TyAlias
+                | DefKind::ForeignTy,
+                did,
+            ) => {
                 debug!("looking for associated item named {} for item {:?}", item_name, did);
                 // Checks if item_name belongs to `impl SomeItem`
                 let assoc_item = cx