]> git.lizzy.rs Git - rust.git/blob - src/test/ui/privacy/private-in-public-ill-formed.rs
Auto merge of #62339 - pnkfelix:issue-61188-use-visitor-for-structural-match-check...
[rust.git] / src / test / ui / privacy / private-in-public-ill-formed.rs
1 mod aliases_pub {
2     struct Priv;
3     mod m {
4         pub struct Pub3;
5     }
6
7     trait PrivTr {
8         type AssocAlias;
9     }
10     impl PrivTr for Priv {
11         type AssocAlias = m::Pub3;
12     }
13
14     impl <Priv as PrivTr>::AssocAlias { //~ ERROR no base type found for inherent implementation
15         pub fn f(arg: Priv) {} // private type `aliases_pub::Priv` in public interface
16     }
17 }
18
19 mod aliases_priv {
20     struct Priv;
21     struct Priv3;
22
23     trait PrivTr {
24         type AssocAlias;
25     }
26     impl PrivTr for Priv {
27         type AssocAlias = Priv3;
28     }
29
30     impl <Priv as PrivTr>::AssocAlias { //~ ERROR no base type found for inherent implementation
31         pub fn f(arg: Priv) {} // OK
32     }
33 }
34
35 fn main() {}