|
1 | 1 | // ignore-tidy-linelength |
2 | 2 | // We specify -Z incremental here because we want to test the partitioning for |
3 | 3 | // incremental compilation |
| 4 | +// We specify opt-level=0 because `drop_in_place` is `Internal` when optimizing |
4 | 5 | // compile-flags:-Zprint-mono-items=lazy -Zincremental=tmp/partitioning-tests/local-drop-glue |
5 | | -// compile-flags:-Zinline-in-all-cgus |
| 6 | +// compile-flags:-Zinline-in-all-cgus -Copt-level=0 |
6 | 7 |
|
7 | 8 | #![allow(dead_code)] |
8 | | -#![crate_type="rlib"] |
| 9 | +#![crate_type = "rlib"] |
9 | 10 |
|
10 | | -//~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<local_drop_glue::Struct[0]> @@ local_drop_glue[Internal] local_drop_glue-mod1[Internal] |
| 11 | +//~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<local_drop_glue::Struct[0]> @@ local_drop_glue-fallback.cgu[External] |
11 | 12 | struct Struct { |
12 | | - _a: u32 |
| 13 | + _a: u32, |
13 | 14 | } |
14 | 15 |
|
15 | 16 | impl Drop for Struct { |
16 | | - //~ MONO_ITEM fn local_drop_glue::{{impl}}[0]::drop[0] @@ local_drop_glue[External] |
| 17 | + //~ MONO_ITEM fn local_drop_glue::{{impl}}[0]::drop[0] @@ local_drop_glue-fallback.cgu[External] |
17 | 18 | fn drop(&mut self) {} |
18 | 19 | } |
19 | 20 |
|
20 | | -//~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<local_drop_glue::Outer[0]> @@ local_drop_glue[Internal] |
| 21 | +//~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<local_drop_glue::Outer[0]> @@ local_drop_glue-fallback.cgu[External] |
21 | 22 | struct Outer { |
22 | | - _a: Struct |
| 23 | + _a: Struct, |
23 | 24 | } |
24 | 25 |
|
25 | 26 | //~ MONO_ITEM fn local_drop_glue::user[0] @@ local_drop_glue[External] |
26 | | -pub fn user() |
27 | | -{ |
28 | | - let _ = Outer { |
29 | | - _a: Struct { |
30 | | - _a: 0 |
31 | | - } |
32 | | - }; |
| 27 | +pub fn user() { |
| 28 | + let _ = Outer { _a: Struct { _a: 0 } }; |
33 | 29 | } |
34 | 30 |
|
35 | | -pub mod mod1 |
36 | | -{ |
| 31 | +pub mod mod1 { |
37 | 32 | use super::Struct; |
38 | 33 |
|
39 | | - //~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<local_drop_glue::mod1[0]::Struct2[0]> @@ local_drop_glue-mod1[Internal] |
| 34 | + //~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<local_drop_glue::mod1[0]::Struct2[0]> @@ local_drop_glue-fallback.cgu[External] |
40 | 35 | struct Struct2 { |
41 | 36 | _a: Struct, |
42 | | - //~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<(u32, local_drop_glue::Struct[0])> @@ local_drop_glue-mod1[Internal] |
| 37 | + //~ MONO_ITEM fn core::ptr[0]::drop_in_place[0]<(u32, local_drop_glue::Struct[0])> @@ local_drop_glue-fallback.cgu[Internal] |
43 | 38 | _b: (u32, Struct), |
44 | 39 | } |
45 | 40 |
|
46 | 41 | //~ MONO_ITEM fn local_drop_glue::mod1[0]::user[0] @@ local_drop_glue-mod1[External] |
47 | | - pub fn user() |
48 | | - { |
49 | | - let _ = Struct2 { |
50 | | - _a: Struct { _a: 0 }, |
51 | | - _b: (0, Struct { _a: 0 }), |
52 | | - }; |
| 42 | + pub fn user() { |
| 43 | + let _ = Struct2 { _a: Struct { _a: 0 }, _b: (0, Struct { _a: 0 }) }; |
53 | 44 | } |
54 | 45 | } |
0 commit comments