@@ -18,6 +18,13 @@ extern {
18
18
#[ repr( transparent) ]
19
19
pub struct Type3 ( i32 ) ;
20
20
21
+ #[ cfi_encoding = "i" ]
22
+ pub struct Type4 ( i32 ) ;
23
+
24
+ #[ cfi_encoding = "j" ]
25
+ #[ repr( transparent) ]
26
+ pub struct Type5 ( u32 ) ;
27
+
21
28
pub fn foo0 ( _: Type1 ) { }
22
29
// CHECK: define{{.*}}foo0{{.*}}!type ![[TYPE0:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
23
30
pub fn foo1 ( _: Type1 , _: Type1 ) { }
@@ -36,6 +43,18 @@ pub fn foo7(_: *mut Type3, _: *mut Type3) { }
36
43
// CHECK: define{{.*}}foo7{{.*}}!type ![[TYPE7:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
37
44
pub fn foo8 ( _: * mut Type3 , _: * mut Type3 , _: * mut Type3 ) { }
38
45
// CHECK: define{{.*}}foo8{{.*}}!type ![[TYPE8:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
46
+ pub fn foo9 ( _: Type4 ) { }
47
+ // CHECK: define{{.*}}foo9{{.*}}!type ![[TYPE9:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
48
+ pub fn foo10 ( _: Type4 , _: Type4 ) { }
49
+ // CHECK: define{{.*}}foo10{{.*}}!type ![[TYPE10:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
50
+ pub fn foo11 ( _: Type4 , _: Type4 , _: Type4 ) { }
51
+ // CHECK: define{{.*}}foo11{{.*}}!type ![[TYPE11:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
52
+ pub fn foo12 ( _: Type5 ) { }
53
+ // CHECK: define{{.*}}foo12{{.*}}!type ![[TYPE12:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
54
+ pub fn foo13 ( _: Type5 , _: Type5 ) { }
55
+ // CHECK: define{{.*}}foo13{{.*}}!type ![[TYPE13:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
56
+ pub fn foo14 ( _: Type5 , _: Type5 , _: Type5 ) { }
57
+ // CHECK: define{{.*}}foo14{{.*}}!type ![[TYPE14:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}}
39
58
40
59
// CHECK: ![[TYPE0]] = !{i64 0, !"_ZTSFv3FooE"}
41
60
// CHECK: ![[TYPE1]] = !{i64 0, !"_ZTSFv3FooS_E"}
@@ -46,3 +65,9 @@ pub fn foo8(_: *mut Type3, _: *mut Type3, _: *mut Type3) { }
46
65
// CHECK: ![[TYPE6]] = !{i64 0, !"_ZTSFvP3BazE"}
47
66
// CHECK: ![[TYPE7]] = !{i64 0, !"_ZTSFvP3BazS0_E"}
48
67
// CHECK: ![[TYPE8]] = !{i64 0, !"_ZTSFvP3BazS0_S0_E"}
68
+ // CHECK: ![[TYPE9]] = !{i64 0, !"_ZTSFviE"}
69
+ // CHECK: ![[TYPE10]] = !{i64 0, !"_ZTSFviiE"}
70
+ // CHECK: ![[TYPE11]] = !{i64 0, !"_ZTSFviiiE"}
71
+ // CHECK: ![[TYPE12]] = !{i64 0, !"_ZTSFvjE"}
72
+ // CHECK: ![[TYPE13]] = !{i64 0, !"_ZTSFvjjE"}
73
+ // CHECK: ![[TYPE14]] = !{i64 0, !"_ZTSFvjjjE"}
0 commit comments