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` cannot be made into an object
  --> $DIR/bare-trait-dont-suggest-dyn.rs:6:33
   |
LL | fn ord_prefer_dot(s: String) -> Ord {
   |                                 ^^^ `Ord` cannot be made into an object
   |
note: for a trait to be "dyn-compatible" it needs to allow building a vtable to allow the call to be resolvable dynamically; for more information visit <https://doc.rust-lang.org/reference/items/traits.html#object-safety>
  --> $SRC_DIR/core/src/cmp.rs:LL:COL
   |
   = note: the trait cannot be made into an object because it uses `Self` as a type parameter
  ::: $SRC_DIR/core/src/cmp.rs:LL:COL
   |
   = note: the trait cannot be made into an object 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`.
