rust/tests/ui/privacy/private-in-public-ill-formed.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

38 lines
743 B
Rust
Raw Normal View History

mod aliases_pub {
struct Priv;
mod m {
pub struct Pub3;
}
trait PrivTr {
type AssocAlias;
}
impl PrivTr for Priv {
type AssocAlias = m::Pub3;
}
2020-08-27 16:55:22 -05:00
impl <Priv as PrivTr>::AssocAlias {
//~^ ERROR no nominal type found for inherent implementation
pub fn f(arg: Priv) {} // private type `aliases_pub::Priv` in public interface
}
}
mod aliases_priv {
struct Priv;
struct Priv3;
trait PrivTr {
type AssocAlias;
}
impl PrivTr for Priv {
type AssocAlias = Priv3;
}
2020-08-27 16:55:22 -05:00
impl <Priv as PrivTr>::AssocAlias {
//~^ ERROR no nominal type found for inherent implementation
pub fn f(arg: Priv) {} // OK
}
}
fn main() {}