]> git.proxmox.com Git - rustc.git/blob - tests/codegen-units/partitioning/local-transitive-inlining.rs
New upstream version 1.68.2+dfsg1
[rustc.git] / tests / codegen-units / partitioning / local-transitive-inlining.rs
1 //
2 // We specify incremental here because we want to test the partitioning for
3 // incremental compilation
4 // incremental
5 // compile-flags:-Zprint-mono-items=lazy
6 // compile-flags:-Zinline-in-all-cgus
7
8 #![allow(dead_code)]
9 #![crate_type="rlib"]
10
11 mod inline {
12
13 //~ MONO_ITEM fn inline::inlined_function @@ local_transitive_inlining-indirect_user[Internal]
14 #[inline(always)]
15 pub fn inlined_function()
16 {
17
18 }
19 }
20
21 mod direct_user {
22 use super::inline;
23
24 //~ MONO_ITEM fn direct_user::foo @@ local_transitive_inlining-indirect_user[Internal]
25 #[inline(always)]
26 pub fn foo() {
27 inline::inlined_function();
28 }
29 }
30
31 pub mod indirect_user {
32 use super::direct_user;
33
34 //~ MONO_ITEM fn indirect_user::bar @@ local_transitive_inlining-indirect_user[External]
35 pub fn bar() {
36 direct_user::foo();
37 }
38 }
39
40 pub mod non_user {
41
42 //~ MONO_ITEM fn non_user::baz @@ local_transitive_inlining-non_user[External]
43 pub fn baz() {
44
45 }
46 }