Skip to content

rustdoc: Referencing methods on extern_types does not resolve #78777

@crumblingstatue

Description

@crumblingstatue

I tried this code:

#![feature(extern_types)]

extern {
    /// The extern type Foo.
    pub type Foo;
}

/// The struct Bar.
pub struct Bar;

impl Foo {
    /// Does stuff
    pub fn do_it(&self) {

    }
}

impl Bar {
    /// This does stuff too
    pub fn do_it(&self) {

    }
}

/// See also [Foo::do_it]
pub fn foo() {

}

/// See also [Bar::do_it]
pub fn bar() {

}

I expected to see this happen: Both Foo::do_it and Bar::do_it resolve.

Instead, this happened: Only Bar::do_it resolves.

warning: unresolved link to `Foo::do_it`
  --> src/lib.rs:25:15
   |
25 | /// See also [Foo::do_it]
   |               ^^^^^^^^^^ the foreign type `Foo` has no associated item named `do_it`

Meta

rustc --version --verbose:

rustc 1.49.0-nightly (ffa2e7ae8 2020-10-24)
binary: rustc
commit-hash: ffa2e7ae8fbf9badc035740db949b9dae271c29f
commit-date: 2020-10-24
host: x86_64-unknown-linux-gnu
release: 1.49.0-nightly
LLVM version: 11.0

Metadata

Metadata

Assignees

Labels

A-intra-doc-linksArea: Intra-doc links, the ability to link to items in docs by nameC-bugCategory: This is a bug.E-easyCall for participation: Easy difficulty. Experience needed to fix: Not much. Good first issue.E-mentorCall for participation: This issue has a mentor. Use #t-compiler/help on Zulip for discussion.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions