]> git.lizzy.rs Git - rust.git/blob - tests/ui/large_enum_variant.rs
removing unsafe from test fn's && renaming shrink to sugg_span
[rust.git] / tests / ui / large_enum_variant.rs
1 // aux-build:macro_rules.rs
2
3 #![allow(dead_code)]
4 #![allow(unused_variables)]
5 #![warn(clippy::large_enum_variant)]
6
7 #[macro_use]
8 extern crate macro_rules;
9
10 enum LargeEnum {
11     A(i32),
12     B([i32; 8000]),
13 }
14
15 enum GenericEnumOk<T> {
16     A(i32),
17     B([T; 8000]),
18 }
19
20 enum GenericEnum2<T> {
21     A(i32),
22     B([i32; 8000]),
23     C(T, [i32; 8000]),
24 }
25
26 trait SomeTrait {
27     type Item;
28 }
29
30 enum LargeEnumGeneric<A: SomeTrait> {
31     Var(A::Item),
32 }
33
34 enum LargeEnum2 {
35     VariantOk(i32, u32),
36     ContainingLargeEnum(LargeEnum),
37 }
38
39 enum LargeEnum3 {
40     ContainingMoreThanOneField(i32, [i32; 8000], [i32; 9500]),
41     VoidVariant,
42     StructLikeLittle { x: i32, y: i32 },
43 }
44
45 enum LargeEnum4 {
46     VariantOk(i32, u32),
47     StructLikeLarge { x: [i32; 8000], y: i32 },
48 }
49
50 enum LargeEnum5 {
51     VariantOk(i32, u32),
52     StructLikeLarge2 { x: [i32; 8000] },
53 }
54
55 enum LargeEnumOk {
56     LargeA([i32; 8000]),
57     LargeB([i32; 8001]),
58 }
59
60 enum LargeEnum6 {
61     A,
62     B([u8; 255]),
63     C([u8; 200]),
64 }
65
66 enum LargeEnum7 {
67     A,
68     B([u8; 1255]),
69     C([u8; 200]),
70 }
71
72 enum LargeEnum8 {
73     VariantOk(i32, u32),
74     ContainingMoreThanOneField([i32; 8000], [i32; 2], [i32; 9500], [i32; 30]),
75 }
76
77 fn main() {
78     large_enum_variant!();
79 }