rust/tests/ui/privacy/private-field-access-violation-3763.rs
2025-08-04 16:43:53 -04:00

30 lines
840 B
Rust

// https://github.com/rust-lang/rust/issues/3763
// Regression test for #3763
mod my_mod {
pub struct MyStruct {
priv_field: isize
}
pub fn MyStruct () -> MyStruct {
MyStruct {priv_field: 4}
}
impl MyStruct {
fn happyfun(&self) {}
}
}
fn main() {
let my_struct = my_mod::MyStruct();
let _woohoo = (&my_struct).priv_field;
//~^ ERROR field `priv_field` of struct `MyStruct` is private
let _woohoo = (Box::new(my_struct)).priv_field;
//~^ ERROR field `priv_field` of struct `MyStruct` is private
(&my_struct).happyfun(); //~ ERROR method `happyfun` is private
(Box::new(my_struct)).happyfun(); //~ ERROR method `happyfun` is private
let nope = my_struct.priv_field;
//~^ ERROR field `priv_field` of struct `MyStruct` is private
}