rust/tests/ui/limits/huge-struct.rs
2024-09-20 10:02:14 -07:00

52 lines
953 B
Rust

// ignore-tidy-linelength
//@ build-fail
//@ normalize-stderr-test: "S32" -> "SXX"
//@ normalize-stderr-test: "S1M" -> "SXX"
//@ normalize-stderr-32bit: "values of the type `[^`]+` are too big" -> "values of the type $$REALLY_TOO_BIG are too big"
//@ normalize-stderr-64bit: "values of the type `[^`]+` are too big" -> "values of the type $$REALLY_TOO_BIG are too big"
struct S32<T> {
v0: T,
v1: T,
v2: T,
v3: T,
v4: T,
v5: T,
v6: T,
v7: T,
v8: T,
u9: T,
v10: T,
v11: T,
v12: T,
v13: T,
v14: T,
v15: T,
v16: T,
v17: T,
v18: T,
v19: T,
v20: T,
v21: T,
v22: T,
v23: T,
v24: T,
u25: T,
v26: T,
v27: T,
v28: T,
v29: T,
v30: T,
v31: T,
}
struct S1k<T> { val: S32<S32<T>> }
struct S1M<T> { val: S1k<S1k<T>> }
fn main() {
let fat: Option<S1M<S1M<S1M<u32>>>> = None;
//~^ ERROR are too big for the target architecture
}