//@ incremental //@ compile-flags: -Zprint-mono-items=lazy -Copt-level=0 #![crate_type = "lib"] // This test ensures that regular fn items and statics are assigned to the CGU of their module. //~ MONO_ITEM fn foo @@ regular_modules[External] pub fn foo() {} //~ MONO_ITEM fn bar @@ regular_modules[External] pub fn bar() {} //~ MONO_ITEM static BAZ @@ regular_modules[External] pub static BAZ: u64 = 0; pub mod mod1 { //~ MONO_ITEM fn mod1::foo @@ regular_modules-mod1[External] pub fn foo() {} //~ MONO_ITEM fn mod1::bar @@ regular_modules-mod1[External] pub fn bar() {} //~ MONO_ITEM static mod1::BAZ @@ regular_modules-mod1[External] pub static BAZ: u64 = 0; pub mod mod1 { //~ MONO_ITEM fn mod1::mod1::foo @@ regular_modules-mod1-mod1[External] pub fn foo() {} //~ MONO_ITEM fn mod1::mod1::bar @@ regular_modules-mod1-mod1[External] pub fn bar() {} //~ MONO_ITEM static mod1::mod1::BAZ @@ regular_modules-mod1-mod1[External] pub static BAZ: u64 = 0; } pub mod mod2 { //~ MONO_ITEM fn mod1::mod2::foo @@ regular_modules-mod1-mod2[External] pub fn foo() {} //~ MONO_ITEM fn mod1::mod2::bar @@ regular_modules-mod1-mod2[External] pub fn bar() {} //~ MONO_ITEM static mod1::mod2::BAZ @@ regular_modules-mod1-mod2[External] pub static BAZ: u64 = 0; } } pub mod mod2 { //~ MONO_ITEM fn mod2::foo @@ regular_modules-mod2[External] pub fn foo() {} //~ MONO_ITEM fn mod2::bar @@ regular_modules-mod2[External] pub fn bar() {} //~ MONO_ITEM static mod2::BAZ @@ regular_modules-mod2[External] pub static BAZ: u64 = 0; pub mod mod1 { //~ MONO_ITEM fn mod2::mod1::foo @@ regular_modules-mod2-mod1[External] pub fn foo() {} //~ MONO_ITEM fn mod2::mod1::bar @@ regular_modules-mod2-mod1[External] pub fn bar() {} //~ MONO_ITEM static mod2::mod1::BAZ @@ regular_modules-mod2-mod1[External] pub static BAZ: u64 = 0; } pub mod mod2 { //~ MONO_ITEM fn mod2::mod2::foo @@ regular_modules-mod2-mod2[External] pub fn foo() {} //~ MONO_ITEM fn mod2::mod2::bar @@ regular_modules-mod2-mod2[External] pub fn bar() {} //~ MONO_ITEM static mod2::mod2::BAZ @@ regular_modules-mod2-mod2[External] pub static BAZ: u64 = 0; } }