Skip to content

Commit 102fc6a

Browse files
committed
unify test files for issue #32829
issue-32829.rs was introduced in f6a243d (2 June 2016), but issue32829.rs was introduced in 94a0552 (9 May 2016). We don't really need both files; all the functionality is being exercised here.
1 parent de8df01 commit 102fc6a

File tree

2 files changed

+76
-93
lines changed

2 files changed

+76
-93
lines changed

src/test/compile-fail/issue-32829.rs

+76-5
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,81 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
// error-pattern: calls in statics are limited
11+
#![feature(const_fn)]
1212

13-
static S : u64 = { { panic!("foo"); 0 } };
13+
const bad: u32 = {
14+
{
15+
5; //~ ERROR: blocks in constants are limited to items and tail expressions
16+
0
17+
}
18+
};
1419

15-
fn main() {
16-
println!("{:?}", S);
17-
}
20+
const bad_two: u32 = {
21+
{
22+
invalid();
23+
//~^ ERROR: blocks in constants are limited to items and tail expressions
24+
//~^^ ERROR: calls in constants are limited to constant functions, struct and enum
25+
0
26+
}
27+
};
28+
29+
const bad_three: u32 = {
30+
{
31+
valid();
32+
//~^ ERROR: blocks in constants are limited to items and tail expressions
33+
0
34+
}
35+
};
36+
37+
static bad_four: u32 = {
38+
{
39+
5; //~ ERROR: blocks in statics are limited to items and tail expressions
40+
0
41+
}
42+
};
43+
44+
static bad_five: u32 = {
45+
{
46+
invalid();
47+
//~^ ERROR: blocks in statics are limited to items and tail expressions
48+
//~^^ ERROR: calls in statics are limited to constant functions, struct and enum
49+
0
50+
}
51+
};
52+
53+
static bad_six: u32 = {
54+
{
55+
valid();
56+
//~^ ERROR: blocks in statics are limited to items and tail expressions
57+
0
58+
}
59+
};
60+
61+
static mut bad_seven: u32 = {
62+
{
63+
5; //~ ERROR: blocks in statics are limited to items and tail expressions
64+
0
65+
}
66+
};
67+
68+
static mut bad_eight: u32 = {
69+
{
70+
invalid();
71+
//~^ ERROR: blocks in statics are limited to items and tail expressions
72+
//~^^ ERROR: calls in statics are limited to constant functions, struct and enum
73+
0
74+
}
75+
};
76+
77+
static mut bad_nine: u32 = {
78+
{
79+
valid();
80+
//~^ ERROR: blocks in statics are limited to items and tail expressions
81+
0
82+
}
83+
};
84+
85+
fn invalid() {}
86+
const fn valid() {}
87+
88+
fn main() {}

src/test/compile-fail/issue32829.rs

-88
This file was deleted.

0 commit comments

Comments
 (0)