summary refs log tree commit diff
path: root/tests/ui/dyn-compatibility/bare-trait-dont-suggest-dyn.old.stderr
blob: 7be6cb0d03bbbec7423b9b96698893ca8474c83f (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
29
30
31
32
33
34
35
36
37
38
39
40
error: trait objects without an explicit `dyn` are deprecated
  --> $DIR/bare-trait-dont-suggest-dyn.rs:6:33
   |
LL | fn ord_prefer_dot(s: String) -> Ord {
   |                                 ^^^
   |
   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
note: the lint level is defined here
  --> $DIR/bare-trait-dont-suggest-dyn.rs:5:9
   |
LL | #![deny(bare_trait_objects)]
   |         ^^^^^^^^^^^^^^^^^^
help: if this is a dyn-compatible trait, use `dyn`
   |
LL | fn ord_prefer_dot(s: String) -> dyn Ord {
   |                                 +++

error[E0038]: the trait `Ord` is not dyn compatible
  --> $DIR/bare-trait-dont-suggest-dyn.rs:6:33
   |
LL | fn ord_prefer_dot(s: String) -> Ord {
   |                                 ^^^ `Ord` is not dyn compatible
   |
note: for a trait to be dyn compatible it needs to allow building a vtable
      for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
  --> $SRC_DIR/core/src/cmp.rs:LL:COL
   |
   = note: the trait is not dyn compatible because it uses `Self` as a type parameter
  ::: $SRC_DIR/core/src/cmp.rs:LL:COL
   |
   = note: the trait is not dyn compatible because it uses `Self` as a type parameter
help: consider using an opaque type instead
   |
LL | fn ord_prefer_dot(s: String) -> impl Ord {
   |                                 ++++

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0038`.