19
19
#![ allow( incomplete_features) ]
20
20
#![ feature( unsized_locals, unsized_fn_params) ]
21
21
22
- // CHECK-LABEL: emptyfn:
22
+ // CHECK-LABEL: emptyfn{{:|\[}}
23
23
#[ no_mangle]
24
24
pub fn emptyfn ( ) {
25
25
// all: __stack_chk_fail
@@ -29,7 +29,7 @@ pub fn emptyfn() {
29
29
// missing-NOT: __stack_chk_fail
30
30
}
31
31
32
- // CHECK-LABEL: array_char
32
+ // CHECK-LABEL: array_char{{:|\[}}
33
33
#[ no_mangle]
34
34
pub fn array_char ( f : fn ( * const char ) ) {
35
35
let a = [ 'c' ; 1 ] ;
@@ -47,7 +47,7 @@ pub fn array_char(f: fn(*const char)) {
47
47
// missing-NOT: __stack_chk_fail
48
48
}
49
49
50
- // CHECK-LABEL: array_u8_1
50
+ // CHECK-LABEL: array_u8_1{{:|\[}}
51
51
#[ no_mangle]
52
52
pub fn array_u8_1 ( f : fn ( * const u8 ) ) {
53
53
let a = [ 0u8 ; 1 ] ;
@@ -63,7 +63,7 @@ pub fn array_u8_1(f: fn(*const u8)) {
63
63
// missing-NOT: __stack_chk_fail
64
64
}
65
65
66
- // CHECK-LABEL: array_u8_small:
66
+ // CHECK-LABEL: array_u8_small{{:|\[}}
67
67
#[ no_mangle]
68
68
pub fn array_u8_small ( f : fn ( * const u8 ) ) {
69
69
let a = [ 0u8 ; 2 ] ;
@@ -80,7 +80,7 @@ pub fn array_u8_small(f: fn(*const u8)) {
80
80
// missing-NOT: __stack_chk_fail
81
81
}
82
82
83
- // CHECK-LABEL: array_u8_large:
83
+ // CHECK-LABEL: array_u8_large{{:|\[}}
84
84
#[ no_mangle]
85
85
pub fn array_u8_large ( f : fn ( * const u8 ) ) {
86
86
let a = [ 0u8 ; 9 ] ;
@@ -99,7 +99,7 @@ pub fn array_u8_large(f: fn(*const u8)) {
99
99
#[ derive( Copy , Clone ) ]
100
100
pub struct ByteSizedNewtype ( u8 ) ;
101
101
102
- // CHECK-LABEL: array_bytesizednewtype_9:
102
+ // CHECK-LABEL: array_bytesizednewtype_9{{:|\[}}
103
103
#[ no_mangle]
104
104
pub fn array_bytesizednewtype_9 ( f : fn ( * const ByteSizedNewtype ) ) {
105
105
let a = [ ByteSizedNewtype ( 0 ) ; 9 ] ;
@@ -115,7 +115,7 @@ pub fn array_bytesizednewtype_9(f: fn(*const ByteSizedNewtype)) {
115
115
// missing-NOT: __stack_chk_fail
116
116
}
117
117
118
- // CHECK-LABEL: local_var_addr_used_indirectly
118
+ // CHECK-LABEL: local_var_addr_used_indirectly{{:|\[}}
119
119
#[ no_mangle]
120
120
pub fn local_var_addr_used_indirectly ( f : fn ( bool ) ) {
121
121
let a = 5 ;
@@ -142,7 +142,7 @@ pub fn local_var_addr_used_indirectly(f: fn(bool)) {
142
142
// missing-NOT: __stack_chk_fail
143
143
}
144
144
145
- // CHECK-LABEL: local_string_addr_taken
145
+ // CHECK-LABEL: local_string_addr_taken{{:|\[}}
146
146
#[ no_mangle]
147
147
pub fn local_string_addr_taken ( f : fn ( & String ) ) {
148
148
let x = String :: new ( ) ;
@@ -168,7 +168,7 @@ impl SelfByRef for i32 {
168
168
}
169
169
}
170
170
171
- // CHECK-LABEL: local_var_addr_taken_used_locally_only
171
+ // CHECK-LABEL: local_var_addr_taken_used_locally_only{{:|\[}}
172
172
#[ no_mangle]
173
173
pub fn local_var_addr_taken_used_locally_only ( factory : fn ( ) -> i32 , sink : fn ( i32 ) ) {
174
174
let x = factory ( ) ;
@@ -195,7 +195,7 @@ pub struct Gigastruct {
195
195
members : u64 ,
196
196
}
197
197
198
- // CHECK-LABEL: local_large_var_moved
198
+ // CHECK-LABEL: local_large_var_moved{{:|\[}}
199
199
#[ no_mangle]
200
200
pub fn local_large_var_moved ( f : fn ( Gigastruct ) ) {
201
201
let x = Gigastruct { does : 0 , not : 1 , have : 2 , array : 3 , members : 4 } ;
@@ -224,7 +224,7 @@ pub fn local_large_var_moved(f: fn(Gigastruct)) {
224
224
// missing-NOT: __stack_chk_fail
225
225
}
226
226
227
- // CHECK-LABEL: local_large_var_cloned
227
+ // CHECK-LABEL: local_large_var_cloned{{:|\[}}
228
228
#[ no_mangle]
229
229
pub fn local_large_var_cloned ( f : fn ( Gigastruct ) ) {
230
230
f ( Gigastruct { does : 0 , not : 1 , have : 2 , array : 3 , members : 4 } ) ;
@@ -281,7 +281,7 @@ extern "C" {
281
281
fn alloca ( size : usize ) -> * mut ( ) ;
282
282
}
283
283
284
- // CHECK-LABEL: alloca_small_compile_time_constant_arg
284
+ // CHECK-LABEL: alloca_small_compile_time_constant_arg{{:|\[}}
285
285
#[ no_mangle]
286
286
pub fn alloca_small_compile_time_constant_arg ( f : fn ( * mut ( ) ) ) {
287
287
f ( unsafe { alloca ( 8 ) } ) ;
@@ -293,7 +293,7 @@ pub fn alloca_small_compile_time_constant_arg(f: fn(*mut ())) {
293
293
// missing-NOT: __stack_chk_fail
294
294
}
295
295
296
- // CHECK-LABEL: alloca_large_compile_time_constant_arg
296
+ // CHECK-LABEL: alloca_large_compile_time_constant_arg{{:|\[}}
297
297
#[ no_mangle]
298
298
pub fn alloca_large_compile_time_constant_arg ( f : fn ( * mut ( ) ) ) {
299
299
f ( unsafe { alloca ( 9 ) } ) ;
@@ -305,7 +305,7 @@ pub fn alloca_large_compile_time_constant_arg(f: fn(*mut ())) {
305
305
// missing-NOT: __stack_chk_fail
306
306
}
307
307
308
- // CHECK-LABEL: alloca_dynamic_arg
308
+ // CHECK-LABEL: alloca_dynamic_arg{{:|\[}}
309
309
#[ no_mangle]
310
310
pub fn alloca_dynamic_arg ( f : fn ( * mut ( ) ) , n : usize ) {
311
311
f ( unsafe { alloca ( n) } ) ;
@@ -324,7 +324,7 @@ pub fn alloca_dynamic_arg(f: fn(*mut ()), n: usize) {
324
324
// this is support for the "unsized locals" unstable feature:
325
325
// https://doc.rust-lang.org/unstable-book/language-features/unsized-locals.html.
326
326
327
- // CHECK-LABEL: unsized_fn_param
327
+ // CHECK-LABEL: unsized_fn_param{{:|\[}}
328
328
#[ no_mangle]
329
329
pub fn unsized_fn_param ( s : [ u8 ] , l : bool , f : fn ( [ u8 ] ) ) {
330
330
let n = if l { 1 } else { 2 } ;
@@ -344,7 +344,7 @@ pub fn unsized_fn_param(s: [u8], l: bool, f: fn([u8])) {
344
344
// missing-NOT: __stack_chk_fail
345
345
}
346
346
347
- // CHECK-LABEL: unsized_local
347
+ // CHECK-LABEL: unsized_local{{:|\[}}
348
348
#[ no_mangle]
349
349
pub fn unsized_local ( s : & [ u8 ] , l : bool , f : fn ( & mut [ u8 ] ) ) {
350
350
let n = if l { 1 } else { 2 } ;
0 commit comments