| mod a {} | |
| pub (a) fn afn() {} //~ ERROR incorrect visibility restriction | |
| pub (b) fn bfn() {} //~ ERROR incorrect visibility restriction | |
| pub (crate::a) fn cfn() {} //~ ERROR incorrect visibility restriction | |
| pub fn privfn() {} | |
| mod x { | |
| mod y { | |
| pub (in crate::x) fn foo() {} | |
| pub (super) fn bar() {} | |
| pub (crate) fn qux() {} | |
| } | |
| } | |
| mod y { | |
| struct Foo { | |
| pub (crate) c: usize, | |
| pub (super) s: usize, | |
| valid_private: usize, | |
| pub (in crate::y) valid_in_x: usize, | |
| pub (a) invalid: usize, //~ ERROR incorrect visibility restriction | |
| pub (in crate::x) non_parent_invalid: usize, //~ ERROR visibilities can only be restricted | |
| } | |
| } | |
| fn main() {} | |
| // test multichar names | |
| mod xyz {} | |
| pub (xyz) fn xyz() {} //~ ERROR incorrect visibility restriction |