error: lifetime in trait object type must be followed by `+` --> $DIR/gat-trait-path-parenthesised-args.rs:8: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:8:27 | LL | fn foo<'a>(arg: Box>) {} | ^^^^^ warning: the feature `generic_associated_types` is incomplete and may not be safe to use and/or cause compiler crashes --> $DIR/gat-trait-path-parenthesised-args.rs:1:12 | LL | #![feature(generic_associated_types)] | ^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(incomplete_features)]` on by default = note: see issue #44265 for more information warning: trait objects without an explicit `dyn` are deprecated --> $DIR/gat-trait-path-parenthesised-args.rs:8:29 | LL | fn foo<'a>(arg: Box>) {} | ^^ help: use `dyn`: `dyn 'a` | = note: `#[warn(bare_trait_objects)]` on by default = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! = note: for more information, see issue #80165 error[E0107]: this associated type takes 1 lifetime argument but 0 lifetime arguments were supplied --> $DIR/gat-trait-path-parenthesised-args.rs:8: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:5: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:8: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:5:8 | LL | type Y<'a>; | ^ error: aborting due to 4 previous errors; 2 warnings emitted For more information about this error, try `rustc --explain E0107`.