summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/safety-trait-impl.stderr
blob: e78e0e3a6baa48a9f1449763ad50952368913365 (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[E0200]: the trait `UnsafeTrait` requires an `unsafe impl` declaration
  --> $DIR/safety-trait-impl.rs:14:1
   |
LL | impl UnsafeTrait for u16 { }
   | ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: the trait `UnsafeTrait` 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 UnsafeTrait for u16 { }
   | ++++++

error[E0199]: implementing the trait `SafeTrait` is not unsafe
  --> $DIR/safety-trait-impl.rs:16:1
   |
LL | unsafe impl SafeTrait for u32 { }
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
help: remove `unsafe` from this trait implementation
   |
LL - unsafe impl SafeTrait for u32 { }
LL + impl SafeTrait for u32 { }
   |

error: aborting due to 2 previous errors

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