summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/unusual_item_types.rs
blob: 6dad636416f228826ad35746c125fe047e06ac99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Test that we don't ICE when trying to dump MIR for unusual item types and
// that we don't create filenames containing `<` and `>`
// compile-flags: -Zmir-opt-level=0


struct A;

// EMIT_MIR unusual_item_types.{impl#0}-ASSOCIATED_CONSTANT.built.after.mir
impl A {
    const ASSOCIATED_CONSTANT: i32 = 2;
}

// See #59021
// EMIT_MIR unusual_item_types.Test-X-{constructor#0}.built.after.mir
enum Test {
    X(usize),
    Y { a: usize },
}

// EMIT_MIR unusual_item_types.E-V-{constant#0}.built.after.mir
enum E {
    V = 5,
}

fn main() {
    let f = Test::X as fn(usize) -> Test;
// EMIT_MIR core.ptr-drop_in_place.Vec_i32_.AddMovesForPackedDrops.before.mir
    let v = Vec::<i32>::new();
}