blob: b08767b210b0609c981dfbc8dffb0aaadad99c26 [file] [log] [blame]
// check-pass
// Here we check that a `:vis` macro matcher subsititued for the empty visibility
// (`VisibilityKind::Inherited`) is accepted when used before an item in a trait.
fn main() {}
macro_rules! mac_in_trait {
($vis:vis MARKER) => {
$vis fn beta() {}
$vis const GAMMA: u8;
$vis type Delta;
}
}
trait Alpha {
mac_in_trait!(MARKER);
}
// We also accept visibilities on items in traits syntactically but not semantically.
#[cfg(FALSE)]
trait Foo {
pub fn bar();
pub(crate) type baz;
pub(super) const QUUX: u8;
}