|
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