summaryrefslogtreecommitdiffstats
path: root/vendor/bitflags/tests/compile-fail/impls
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/bitflags/tests/compile-fail/impls')
-rw-r--r--vendor/bitflags/tests/compile-fail/impls/copy.rs10
-rw-r--r--vendor/bitflags/tests/compile-fail/impls/copy.stderr.beta27
-rw-r--r--vendor/bitflags/tests/compile-fail/impls/eq.rs10
-rw-r--r--vendor/bitflags/tests/compile-fail/impls/eq.stderr.beta55
4 files changed, 102 insertions, 0 deletions
diff --git a/vendor/bitflags/tests/compile-fail/impls/copy.rs b/vendor/bitflags/tests/compile-fail/impls/copy.rs
new file mode 100644
index 000000000..38f4822f5
--- /dev/null
+++ b/vendor/bitflags/tests/compile-fail/impls/copy.rs
@@ -0,0 +1,10 @@
+use bitflags::bitflags;
+
+bitflags! {
+ #[derive(Clone, Copy)]
+ struct Flags: u32 {
+ const A = 0b00000001;
+ }
+}
+
+fn main() {}
diff --git a/vendor/bitflags/tests/compile-fail/impls/copy.stderr.beta b/vendor/bitflags/tests/compile-fail/impls/copy.stderr.beta
new file mode 100644
index 000000000..0c13aa502
--- /dev/null
+++ b/vendor/bitflags/tests/compile-fail/impls/copy.stderr.beta
@@ -0,0 +1,27 @@
+error[E0119]: conflicting implementations of trait `std::clone::Clone` for type `Flags`
+ --> $DIR/copy.rs:3:1
+ |
+3 | / bitflags! {
+4 | | #[derive(Clone, Copy)]
+ | | ----- first implementation here
+5 | | struct Flags: u32 {
+6 | | const A = 0b00000001;
+7 | | }
+8 | | }
+ | |_^ conflicting implementation for `Flags`
+ |
+ = note: this error originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error[E0119]: conflicting implementations of trait `std::marker::Copy` for type `Flags`
+ --> $DIR/copy.rs:3:1
+ |
+3 | / bitflags! {
+4 | | #[derive(Clone, Copy)]
+ | | ---- first implementation here
+5 | | struct Flags: u32 {
+6 | | const A = 0b00000001;
+7 | | }
+8 | | }
+ | |_^ conflicting implementation for `Flags`
+ |
+ = note: this error originates in the derive macro `Copy` (in Nightly builds, run with -Z macro-backtrace for more info)
diff --git a/vendor/bitflags/tests/compile-fail/impls/eq.rs b/vendor/bitflags/tests/compile-fail/impls/eq.rs
new file mode 100644
index 000000000..4abbd630c
--- /dev/null
+++ b/vendor/bitflags/tests/compile-fail/impls/eq.rs
@@ -0,0 +1,10 @@
+use bitflags::bitflags;
+
+bitflags! {
+ #[derive(PartialEq, Eq)]
+ struct Flags: u32 {
+ const A = 0b00000001;
+ }
+}
+
+fn main() {}
diff --git a/vendor/bitflags/tests/compile-fail/impls/eq.stderr.beta b/vendor/bitflags/tests/compile-fail/impls/eq.stderr.beta
new file mode 100644
index 000000000..8a1a3b410
--- /dev/null
+++ b/vendor/bitflags/tests/compile-fail/impls/eq.stderr.beta
@@ -0,0 +1,55 @@
+error[E0119]: conflicting implementations of trait `std::cmp::PartialEq` for type `Flags`
+ --> $DIR/eq.rs:3:1
+ |
+3 | / bitflags! {
+4 | | #[derive(PartialEq, Eq)]
+ | | --------- first implementation here
+5 | | struct Flags: u32 {
+6 | | const A = 0b00000001;
+7 | | }
+8 | | }
+ | |_^ conflicting implementation for `Flags`
+ |
+ = note: this error originates in the derive macro `PartialEq` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error[E0119]: conflicting implementations of trait `std::cmp::Eq` for type `Flags`
+ --> $DIR/eq.rs:3:1
+ |
+3 | / bitflags! {
+4 | | #[derive(PartialEq, Eq)]
+ | | -- first implementation here
+5 | | struct Flags: u32 {
+6 | | const A = 0b00000001;
+7 | | }
+8 | | }
+ | |_^ conflicting implementation for `Flags`
+ |
+ = note: this error originates in the derive macro `Eq` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error[E0119]: conflicting implementations of trait `std::marker::StructuralPartialEq` for type `Flags`
+ --> $DIR/eq.rs:3:1
+ |
+3 | / bitflags! {
+4 | | #[derive(PartialEq, Eq)]
+ | | --------- first implementation here
+5 | | struct Flags: u32 {
+6 | | const A = 0b00000001;
+7 | | }
+8 | | }
+ | |_^ conflicting implementation for `Flags`
+ |
+ = note: this error originates in the derive macro `PartialEq` (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error[E0119]: conflicting implementations of trait `std::marker::StructuralEq` for type `Flags`
+ --> $DIR/eq.rs:3:1
+ |
+3 | / bitflags! {
+4 | | #[derive(PartialEq, Eq)]
+ | | -- first implementation here
+5 | | struct Flags: u32 {
+6 | | const A = 0b00000001;
+7 | | }
+8 | | }
+ | |_^ conflicting implementation for `Flags`
+ |
+ = note: this error originates in the derive macro `Eq` (in Nightly builds, run with -Z macro-backtrace for more info)