summaryrefslogtreecommitdiffstats
path: root/src/test/ui/coherence/coherence-default-trait-impl.stderr
blob: 6320187827256a9224b66e2b2b2454d8ad4b1534 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
error[E0199]: implementing the trait `MySafeTrait` is not unsafe
  --> $DIR/coherence-default-trait-impl.rs:8:1
   |
LL | unsafe impl MySafeTrait for Foo {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
help: remove `unsafe` from this trait implementation
   |
LL - unsafe impl MySafeTrait for Foo {}
LL + impl MySafeTrait for Foo {}
   |

error[E0200]: the trait `MyUnsafeTrait` requires an `unsafe impl` declaration
  --> $DIR/coherence-default-trait-impl.rs:13:1
   |
LL | impl MyUnsafeTrait for Foo {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: the trait `MyUnsafeTrait` enforces invariants that the compiler can't check. Review the trait documentation and make sure this implementation upholds those invariants before adding the `unsafe` keyword
help: add `unsafe` to this trait implementation
   |
LL | unsafe impl MyUnsafeTrait for Foo {}
   | ++++++

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0199, E0200.
For more information about an error, try `rustc --explain E0199`.