Skip to content

intra-doc-resolution fails to link in re-exported types that don't match original module structure #60883

Closed
@Nemo157

Description

@Nemo157
Member

Given a base crate

// bar/src/lib.rs
pub trait Foo {
    /// [`Bar`] [`Baz`]
    fn foo();
}

pub trait Bar {
}

pub trait Baz {
}

and a crate that uses that and re-exports types from it in a different structure

// foo/src/lib.rs
pub mod bar {
    pub use ::bar::Bar;
}

pub use ::bar::{Foo, Baz};

The links in the re-exported types only work when the module structure matches between the two crates (in this case for Baz but not for Bar)

Screenshot 2019-05-16 at 18 15 49

Rustdoc correctly warns that it can't resolve the link, but this seems like a primary usecase of the feature to allow facade crates to have correctly linked docs when they rearrange types from underlying crates.

warning: `[Bar]` cannot be resolved, ignoring it...
 --> /private/var/folders/0p/5yvmrvhj5w3_vy1y8x7dvk7m0000gn/T/tmp.lUuznfwf/foo/bar/src/lib.rs:2:10
  |
2 |     /// [`Bar`] [`Baz`]
  |          ^^^^^ cannot be resolved, ignoring
  |

Activity

Nemo157

Nemo157 commented on May 16, 2019

@Nemo157
MemberAuthor

@rustbot modify labels to A-intra-doc-links T-rustdoc.

added
A-intra-doc-linksArea: Intra-doc links, the ability to link to items in docs by name
T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.
on May 16, 2019
Manishearth

Manishearth commented on Oct 30, 2019

@Manishearth
Member

Filed #65983 with more information on this so someone can pick it up if they want to

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-intra-doc-linksArea: Intra-doc links, the ability to link to items in docs by nameT-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

        Participants

        @Nemo157@Manishearth@rustbot

        Issue actions

          intra-doc-resolution fails to link in re-exported types that don't match original module structure · Issue #60883 · rust-lang/rust