summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc/intra-doc/in-bodies.rs
blob: 55169e5d3c4593cc8d3926acbd2e57a1981705bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// we need to make sure that intra-doc links on trait impls get resolved in the right scope

#![deny(rustdoc::broken_intra_doc_links)]

pub mod inner {
    pub struct SomethingOutOfScope;
}

pub mod other {
    use inner::SomethingOutOfScope;
    use SomeTrait;

    pub struct OtherStruct;

    /// Let's link to [SomethingOutOfScope] while we're at it.
    impl SomeTrait for OtherStruct {}
}

pub trait SomeTrait {}

pub struct SomeStruct;

fn __implementation_details() {
    use inner::SomethingOutOfScope;

    // FIXME: intra-links resolve in their nearest module scope, not their actual scope in cases
    // like this
    // Let's link to [SomethingOutOfScope] while we're at it.
    impl SomeTrait for SomeStruct {}
}