]> git.lizzy.rs Git - rust.git/blobdiff - tests/ui/large_enum_variant.rs
Auto merge of #8374 - Alexendoo:bless-revisions, r=camsteffen
[rust.git] / tests / ui / large_enum_variant.rs
index 5bbcb93910b9e8c6a9a70c45e4f3d1abec1ffaab..b45cc849eaec42b5796e35d196f55aee7d312e46 100644 (file)
@@ -1,25 +1,26 @@
-#![feature(plugin)]
-#![plugin(clippy)]
+// aux-build:macro_rules.rs
 
 #![allow(dead_code)]
 #![allow(unused_variables)]
-#![deny(large_enum_variant)]
+#![warn(clippy::large_enum_variant)]
+
+#[macro_use]
+extern crate macro_rules;
 
 enum LargeEnum {
     A(i32),
     B([i32; 8000]),
+}
 
-
+enum GenericEnumOk<T> {
+    A(i32),
+    B([T; 8000]),
 }
 
-enum GenericEnum<T> {
+enum GenericEnum2<T> {
     A(i32),
     B([i32; 8000]),
-
-
-    C([T; 8000]),
-    D(T, [i32; 8000]),
-
+    C(T, [i32; 8000]),
 }
 
 trait SomeTrait {
@@ -27,27 +28,52 @@ 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),
+}
 
-
+enum LargeEnum3 {
     ContainingMoreThanOneField(i32, [i32; 8000], [i32; 9500]),
-
     VoidVariant,
     StructLikeLittle { x: i32, y: i32 },
+}
+
+enum LargeEnum4 {
+    VariantOk(i32, u32),
     StructLikeLarge { x: [i32; 8000], y: i32 },
+}
 
-    StructLikeLarge2 {
-        x:
-        [i32; 8000]
+enum LargeEnum5 {
+    VariantOk(i32, u32),
+    StructLikeLarge2 { x: [i32; 8000] },
+}
 
-    },
+enum LargeEnumOk {
+    LargeA([i32; 8000]),
+    LargeB([i32; 8001]),
 }
 
-fn main() {
+enum LargeEnum6 {
+    A,
+    B([u8; 255]),
+    C([u8; 200]),
+}
 
+enum LargeEnum7 {
+    A,
+    B([u8; 1255]),
+    C([u8; 200]),
+}
+
+enum LargeEnum8 {
+    VariantOk(i32, u32),
+    ContainingMoreThanOneField([i32; 8000], [i32; 2], [i32; 9500], [i32; 30]),
+}
+
+fn main() {
+    large_enum_variant!();
 }