rust/tests/ui/consts/huge-values.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

18 lines
535 B
Rust
Raw Normal View History

//@ build-pass
//@ ignore-32bit
2020-01-15 09:30:26 +00:00
// This test is a canary test that will essentially not compile in a reasonable time frame
// (so it'll take hours) if any of the optimizations regress. With the optimizations, these compile
// in milliseconds just as if the length were set to `1`.
#[derive(Clone, Copy)]
struct Foo;
fn main() {
let _ = [(); 4_000_000_000];
let _ = [0u8; 4_000_000_000];
let _ = [Foo; 4_000_000_000];
2020-01-15 09:30:26 +00:00
let _ = [(Foo, (), Foo, ((), Foo, [0; 0])); 4_000_000_000];
let _ = [[0; 0]; 4_000_000_000];
}