error: lifetime in trait object type must be followed by `+` --> $DIR/gat-trait-path-parenthesised-args.rs:7:29 | LL | fn foo<'a>(arg: Box>) {} | ^^ error: parenthesized generic arguments cannot be used in associated type constraints --> $DIR/gat-trait-path-parenthesised-args.rs:7:27 | LL | fn foo<'a>(arg: Box>) {} | ^^^^^ warning: trait objects without an explicit `dyn` are deprecated --> $DIR/gat-trait-path-parenthesised-args.rs:7:29 | LL | fn foo<'a>(arg: Box>) {} | ^^ help: use `dyn`: `dyn 'a` | = note: `#[warn(bare_trait_objects)]` on by default = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! = note: for more information, see error[E0107]: this associated type takes 1 lifetime argument but 0 lifetime arguments were supplied --> $DIR/gat-trait-path-parenthesised-args.rs:7:27 | LL | fn foo<'a>(arg: Box>) {} | ^ expected 1 lifetime argument | note: associated type defined here, with 1 lifetime parameter: `'a` --> $DIR/gat-trait-path-parenthesised-args.rs:4:8 | LL | type Y<'a>; | ^ -- help: add missing lifetime argument | LL | fn foo<'a>(arg: Box>) {} | +++ error[E0107]: this associated type takes 0 generic arguments but 1 generic argument was supplied --> $DIR/gat-trait-path-parenthesised-args.rs:7:27 | LL | fn foo<'a>(arg: Box>) {} | ^---- help: remove these generics | | | expected 0 generic arguments | note: associated type defined here, with 0 generic parameters --> $DIR/gat-trait-path-parenthesised-args.rs:4:8 | LL | type Y<'a>; | ^ error: aborting due to 4 previous errors; 1 warning emitted For more information about this error, try `rustc --explain E0107`.