summaryrefslogtreecommitdiffstats
path: root/src/test/ui/coherence/coherence-impls-copy.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/coherence/coherence-impls-copy.stderr')
-rw-r--r--src/test/ui/coherence/coherence-impls-copy.stderr76
1 files changed, 76 insertions, 0 deletions
diff --git a/src/test/ui/coherence/coherence-impls-copy.stderr b/src/test/ui/coherence/coherence-impls-copy.stderr
new file mode 100644
index 000000000..86356af25
--- /dev/null
+++ b/src/test/ui/coherence/coherence-impls-copy.stderr
@@ -0,0 +1,76 @@
+error[E0117]: only traits defined in the current crate can be implemented for primitive types
+ --> $DIR/coherence-impls-copy.rs:5:1
+ |
+LL | impl Copy for i32 {}
+ | ^^^^^^^^^^^^^^---
+ | | |
+ | | `i32` is not defined in the current crate
+ | impl doesn't use only types from inside the current crate
+ |
+ = note: define and implement a trait or new type instead
+
+error[E0119]: conflicting implementations of trait `std::marker::Copy` for type `&NotSync`
+ --> $DIR/coherence-impls-copy.rs:28:1
+ |
+LL | impl Copy for &'static NotSync {}
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ |
+ = note: conflicting implementation in crate `core`:
+ - impl<T> Copy for &T
+ where T: ?Sized;
+
+error[E0117]: only traits defined in the current crate can be implemented for arbitrary types
+ --> $DIR/coherence-impls-copy.rs:33:1
+ |
+LL | impl Copy for &'static [NotSync] {}
+ | ^^^^^^^^^^^^^^------------------
+ | | |
+ | | this is not defined in the current crate because slices are always foreign
+ | impl doesn't use only types from inside the current crate
+ |
+ = note: define and implement a trait or new type instead
+
+error[E0117]: only traits defined in the current crate can be implemented for arbitrary types
+ --> $DIR/coherence-impls-copy.rs:25:1
+ |
+LL | impl Copy for (MyType, MyType) {}
+ | ^^^^^^^^^^^^^^----------------
+ | | |
+ | | this is not defined in the current crate because tuples are always foreign
+ | impl doesn't use only types from inside the current crate
+ |
+ = note: define and implement a trait or new type instead
+
+error[E0117]: only traits defined in the current crate can be implemented for arbitrary types
+ --> $DIR/coherence-impls-copy.rs:30:1
+ |
+LL | impl Copy for [MyType] {}
+ | ^^^^^^^^^^^^^^--------
+ | | |
+ | | this is not defined in the current crate because slices are always foreign
+ | impl doesn't use only types from inside the current crate
+ |
+ = note: define and implement a trait or new type instead
+
+error[E0206]: the trait `Copy` may not be implemented for this type
+ --> $DIR/coherence-impls-copy.rs:21:15
+ |
+LL | impl Copy for &'static mut MyType {}
+ | ^^^^^^^^^^^^^^^^^^^ type is not a structure or enumeration
+
+error[E0206]: the trait `Copy` may not be implemented for this type
+ --> $DIR/coherence-impls-copy.rs:25:15
+ |
+LL | impl Copy for (MyType, MyType) {}
+ | ^^^^^^^^^^^^^^^^ type is not a structure or enumeration
+
+error[E0206]: the trait `Copy` may not be implemented for this type
+ --> $DIR/coherence-impls-copy.rs:30:15
+ |
+LL | impl Copy for [MyType] {}
+ | ^^^^^^^^ type is not a structure or enumeration
+
+error: aborting due to 8 previous errors
+
+Some errors have detailed explanations: E0117, E0119, E0206.
+For more information about an error, try `rustc --explain E0117`.