rust/tests/ui/privacy/issue-79593.rs

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

30 lines
665 B
Rust
Raw Normal View History

mod foo {
pub struct Pub { private: () }
pub enum Enum {
Variant { x: (), y: () },
Other
}
fn correct() {
Pub {};
//~^ ERROR missing field `private` in initializer of `Pub`
Enum::Variant { x: () };
//~^ ERROR missing field `y` in initializer of `Enum`
}
}
fn correct() {
foo::Pub {};
//~^ ERROR cannot construct `Pub` with struct literal syntax due to private fields
}
fn wrong() {
foo::Enum::Variant { x: () };
//~^ ERROR missing field `y` in initializer of `Enum`
foo::Enum::Variant { };
//~^ ERROR missing fields `x` and `y` in initializer of `Enum`
}
fn main() {}