]> git.lizzy.rs Git - rust.git/blobdiff - tests/ui/large_enum_variant.rs
iterate List by value
[rust.git] / tests / ui / large_enum_variant.rs
index 8d289a3283246977168a4feb71dc08b133b10996..852ef5fec0e7b060332bca56b8fb96e29d555e72 100644 (file)
@@ -1,25 +1,21 @@
-#![feature(plugin)]
-#![plugin(clippy)]
-
 #![allow(dead_code)]
 #![allow(unused_variables)]
-#![deny(large_enum_variant)]
+#![warn(clippy::large_enum_variant)]
 
 enum LargeEnum {
     A(i32),
-    B([i32; 8000]), //~ ERROR large enum variant found
-    //~^ HELP consider boxing the large fields to reduce the total size of the enum
-    //~| SUGGESTION Box<[i32; 8000]>
+    B([i32; 8000]),
+}
+
+enum GenericEnumOk<T> {
+    A(i32),
+    B([T; 8000]),
 }
 
-enum GenericEnum<T> {
+enum GenericEnum2<T> {
     A(i32),
-    B([i32; 8000]), //~ ERROR large enum variant found
-    //~^ HELP consider boxing the large fields to reduce the total size of the enum
-    //~| SUGGESTION Box<[i32; 8000]>
-    C([T; 8000]),
-    D(T, [i32; 8000]), //~ ERROR large enum variant found
-    //~^ HELP consider boxing the large fields to reduce the total size of the enum
+    B([i32; 8000]),
+    C(T, [i32; 8000]),
 }
 
 trait SomeTrait {
@@ -27,27 +23,32 @@ trait SomeTrait {
 }
 
 enum LargeEnumGeneric<A: SomeTrait> {
-    Var(A::Item), // regression test, this used to ICE
+    Var(A::Item),
 }
 
-enum AnotherLargeEnum {
+enum LargeEnum2 {
     VariantOk(i32, u32),
-    ContainingLargeEnum(LargeEnum), //~ ERROR large enum variant found
-    //~^ HELP consider boxing the large fields to reduce the total size of the enum
-    //~| SUGGESTION Box<LargeEnum>
-    ContainingMoreThanOneField(i32, [i32; 8000], [i32; 9500]), //~ ERROR large enum variant found
-    //~^ HELP consider boxing the large fields to reduce the total size of the enum
+    ContainingLargeEnum(LargeEnum),
+}
+enum LargeEnum3 {
+    ContainingMoreThanOneField(i32, [i32; 8000], [i32; 9500]),
     VoidVariant,
     StructLikeLittle { x: i32, y: i32 },
-    StructLikeLarge { x: [i32; 8000], y: i32 }, //~ ERROR large enum variant found
-    //~^ HELP consider boxing the large fields to reduce the total size of the enum
-    StructLikeLarge2 { //~ ERROR large enum variant found
-        x:
-        [i32; 8000] //~ SUGGESTION Box<[i32; 8000]>
-        //~^ HELP consider boxing the large fields to reduce the total size of the enum
-    },
 }
 
-fn main() {
+enum LargeEnum4 {
+    VariantOk(i32, u32),
+    StructLikeLarge { x: [i32; 8000], y: i32 },
+}
 
+enum LargeEnum5 {
+    VariantOk(i32, u32),
+    StructLikeLarge2 { x: [i32; 8000] },
 }
+
+enum LargeEnumOk {
+    LargeA([i32; 8000]),
+    LargeB([i32; 8001]),
+}
+
+fn main() {}