| //@ incremental | |
| //@ compile-flags: -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; | |
| } | |
| } |