//@ revisions: bpass1 bpass2
//@ compile-flags: -Z query-dep-graph -Copt-level=0
// FIXME(#62277): could be check-pass?

#![allow(warnings)]
#![feature(rustc_attrs)]
#![crate_type = "rlib"]

// Here the only thing which changes is the string constant in `x`.
// Therefore, the compiler deduces (correctly) that typeck_root is not
// needed even for callers of `x`.

pub mod x {
    #[cfg(bpass1)]
    pub fn x() {
        println!("{}", "1");
    }

    #[cfg(bpass2)]
    #[rustc_clean(except = "hir_owner,optimized_mir", cfg = "bpass2")]
    pub fn x() {
        println!("{}", "2");
    }
}

pub mod y {
    use x;

    #[rustc_clean(cfg = "bpass2")]
    pub fn y() {
        x::x();
    }
}

pub mod z {
    use y;

    #[rustc_clean(cfg = "bpass2")]
    pub fn z() {
        y::y();
    }
}
