// run-pass
#![allow(dead_code)]
// aux-build:two_macros-rpass.rs

extern crate two_macros_rpass as two_macros;

::two_macros::macro_one!();
two_macros::macro_one!();

mod foo { pub use two_macros::macro_one as bar; }

trait T {
    foo::bar!();
    ::foo::bar!();
}

struct S {
    x: foo::bar!(i32),
    y: ::foo::bar!(i32),
}

impl S {
    foo::bar!();
    ::foo::bar!();
}

fn main() {
    foo::bar!();
    ::foo::bar!();

    let _ = foo::bar!(0);
    let _ = ::foo::bar!(0);

    let foo::bar!(_) = 0;
    let ::foo::bar!(_) = 0;
}
