2017-03-17 21:13:00 -07:00
|
|
|
mod a {}
|
|
|
|
|
|
2025-04-05 19:19:56 +03:00
|
|
|
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
|
2019-04-30 17:48:18 -07:00
|
|
|
|
2017-03-17 21:13:00 -07:00
|
|
|
pub fn privfn() {}
|
|
|
|
|
mod x {
|
|
|
|
|
mod y {
|
2025-06-03 10:03:42 +02:00
|
|
|
pub (in crate::x) fn foo() {}
|
2017-03-17 21:13:00 -07:00
|
|
|
pub (super) fn bar() {}
|
|
|
|
|
pub (crate) fn qux() {}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
mod y {
|
|
|
|
|
struct Foo {
|
|
|
|
|
pub (crate) c: usize,
|
|
|
|
|
pub (super) s: usize,
|
|
|
|
|
valid_private: usize,
|
2025-06-03 10:03:42 +02:00
|
|
|
pub (in crate::y) valid_in_x: usize,
|
2025-04-05 19:19:56 +03:00
|
|
|
pub (a) invalid: usize, //~ ERROR incorrect visibility restriction
|
2025-06-03 10:03:42 +02:00
|
|
|
pub (in crate::x) non_parent_invalid: usize, //~ ERROR visibilities can only be restricted
|
2017-03-17 21:13:00 -07:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2017-03-27 13:59:10 +02:00
|
|
|
fn main() {}
|
|
|
|
|
|
|
|
|
|
// test multichar names
|
|
|
|
|
mod xyz {}
|
2025-04-05 19:19:56 +03:00
|
|
|
pub (xyz) fn xyz() {} //~ ERROR incorrect visibility restriction
|