error: ambiguous `+` in a type
  --> $DIR/trait-object-delimiters.rs:3:13
   |
LL | fn foo1(_: &dyn Drop + AsRef<str>) {}
   |             ^^^^^^^^^^^^^^^^^^^^^
   |
help: try adding parentheses
   |
LL | fn foo1(_: &(dyn Drop + AsRef<str>)) {}
   |             +                     +

error: incorrect parentheses around trait bounds
  --> $DIR/trait-object-delimiters.rs:6:17
   |
LL | fn foo2(_: &dyn (Drop + AsRef<str>)) {}
   |                 ^                 ^
   |
help: fix the parentheses
   |
LL - fn foo2(_: &dyn (Drop + AsRef<str>)) {}
LL + fn foo2(_: &(dyn Drop + AsRef<str>)) {}
   |

error: incorrect parentheses around trait bounds
  --> $DIR/trait-object-delimiters.rs:8:25
   |
LL | fn foo2_no_space(_: &dyn(Drop + AsRef<str>)) {}
   |                         ^                 ^
   |
help: fix the parentheses
   |
LL - fn foo2_no_space(_: &dyn(Drop + AsRef<str>)) {}
LL + fn foo2_no_space(_: &(dyn Drop + AsRef<str>)) {}
   |

error: expected parameter name, found `{`
  --> $DIR/trait-object-delimiters.rs:10:17
   |
LL | fn foo3(_: &dyn {Drop + AsRef<str>}) {}
   |                 ^ expected parameter name

error: expected one of `!`, `(`, `)`, `*`, `,`, `?`, `async`, `const`, `for`, `use`, `~`, lifetime, or path, found `{`
  --> $DIR/trait-object-delimiters.rs:10:17
   |
LL | fn foo3(_: &dyn {Drop + AsRef<str>}) {}
   |                -^ expected one of 13 possible tokens
   |                |
   |                help: missing `,`

error: expected identifier, found `<`
  --> $DIR/trait-object-delimiters.rs:14:17
   |
LL | fn foo4(_: &dyn <Drop + AsRef<str>>) {}
   |                 ^ expected identifier

error: invalid `dyn` keyword
  --> $DIR/trait-object-delimiters.rs:16:25
   |
LL | fn foo5(_: &(dyn Drop + dyn AsRef<str>)) {}
   |                         ^^^
   |
   = help: `dyn` is only needed at the start of a trait `+`-separated list
help: remove this keyword
   |
LL - fn foo5(_: &(dyn Drop + dyn AsRef<str>)) {}
LL + fn foo5(_: &(dyn Drop + AsRef<str>)) {}
   |

error[E0225]: only auto traits can be used as additional traits in a trait object
  --> $DIR/trait-object-delimiters.rs:3:24
   |
LL | fn foo1(_: &dyn Drop + AsRef<str>) {}
   |                 ----   ^^^^^^^^^^ additional non-auto trait
   |                 |
   |                 first non-auto trait
   |
   = help: consider creating a new trait with all of these as supertraits and using that trait here instead: `trait NewTrait: Drop + AsRef<str> {}`
   = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit <https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits>

error[E0224]: at least one trait is required for an object type
  --> $DIR/trait-object-delimiters.rs:10:13
   |
LL | fn foo3(_: &dyn {Drop + AsRef<str>}) {}
   |             ^^^

error[E0225]: only auto traits can be used as additional traits in a trait object
  --> $DIR/trait-object-delimiters.rs:16:29
   |
LL | fn foo5(_: &(dyn Drop + dyn AsRef<str>)) {}
   |                  ----       ^^^^^^^^^^ additional non-auto trait
   |                  |
   |                  first non-auto trait
   |
   = help: consider creating a new trait with all of these as supertraits and using that trait here instead: `trait NewTrait: Drop + AsRef<str> {}`
   = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit <https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits>

error: aborting due to 10 previous errors

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