mirror of https://github.com/rust-lang/rust
20 lines
885 B
Rust
20 lines
885 B
Rust
//@ edition:2018
|
|
|
|
fn foo1(_: &dyn Drop + AsRef<str>) {} //~ ERROR ambiguous `+` in a type
|
|
//~^ ERROR only auto traits can be used as additional traits in a trait object
|
|
|
|
fn foo2(_: &dyn (Drop + AsRef<str>)) {} //~ ERROR incorrect parentheses around trait bounds
|
|
|
|
fn foo2_no_space(_: &dyn(Drop + AsRef<str>)) {} //~ ERROR incorrect parentheses around trait bounds
|
|
|
|
fn foo3(_: &dyn {Drop + AsRef<str>}) {} //~ ERROR expected parameter name, found `{`
|
|
//~^ ERROR expected one of `!`, `(`, `)`, `*`, `,`, `?`, `async`, `const`, `for`, `use`, `~`, lifetime, or path, found `{`
|
|
//~| ERROR at least one trait is required for an object type
|
|
|
|
fn foo4(_: &dyn <Drop + AsRef<str>>) {} //~ ERROR expected identifier, found `<`
|
|
|
|
fn foo5(_: &(dyn Drop + dyn AsRef<str>)) {} //~ ERROR invalid `dyn` keyword
|
|
//~^ ERROR only auto traits can be used as additional traits in a trait object
|
|
|
|
fn main() {}
|