summaryrefslogtreecommitdiffstats
path: root/third_party/rust/enumset/tests/compile-fail/variants.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/enumset/tests/compile-fail/variants.rs')
-rw-r--r--third_party/rust/enumset/tests/compile-fail/variants.rs41
1 files changed, 41 insertions, 0 deletions
diff --git a/third_party/rust/enumset/tests/compile-fail/variants.rs b/third_party/rust/enumset/tests/compile-fail/variants.rs
new file mode 100644
index 0000000000..202d34028f
--- /dev/null
+++ b/third_party/rust/enumset/tests/compile-fail/variants.rs
@@ -0,0 +1,41 @@
+use enumset::*;
+
+#[derive(EnumSetType)]
+enum NegativeVariant {
+ Variant = -1,
+}
+
+#[derive(EnumSetType)]
+enum HasFields {
+ Variant(u32),
+}
+
+#[derive(EnumSetType)]
+#[enumset(repr = "u128")]
+enum BadExplicitRepr {
+ Variant = 128,
+}
+
+#[derive(EnumSetType)]
+#[enumset(serialize_repr = "u8")]
+enum BadSerializationRepr {
+ Variant = 8,
+}
+
+#[derive(EnumSetType)]
+enum NonLiteralRepr {
+ Variant = 1 + 1,
+}
+
+#[derive(EnumSetType)]
+#[enumset(repr = "u16")]
+enum BadMemRepr {
+ Variant = 16,
+}
+
+#[derive(EnumSetType)]
+enum ExcessiveReprSize {
+ Variant = 0xFFFFFFD0,
+}
+
+fn main() {}