error[E0225]: only auto traits can be used as additional traits in a trait object --> $DIR/missing-associated-types.rs:12:32 | LL | type Foo = dyn Add + Sub + X + Y; | -------- ^^^^^^^^ 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: Add + Sub + X + Y {}` = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit error[E0191]: the value of the associated types `A` (from trait `Y`), `Output` (from trait `Add`), `Output` (from trait `Mul`), `Output` (from trait `Sub`) must be specified --> $DIR/missing-associated-types.rs:12:21 | LL | type A; | ------ `A` defined here ... LL | type Foo = dyn Add + Sub + X + Y; | ^^^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^ associated type `A` must be specified | | | | | | | associated type `Output` must be specified | | associated type `Output` must be specified | associated type `Output` must be specified | help: specify the associated types | LL | type Foo = dyn Add + Sub + X + Y; | ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~ error[E0225]: only auto traits can be used as additional traits in a trait object --> $DIR/missing-associated-types.rs:15:32 | LL | type Bar = dyn Add + Sub + X + Z; | -------- ^^^^^^^^ 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: Add + Sub + X + Z {}` = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit error[E0191]: the value of the associated types `A` (from trait `Z`), `B` (from trait `Z`), `Output` (from trait `Add`), `Output` (from trait `Div`), `Output` (from trait `Div`), `Output` (from trait `Mul`), `Output` (from trait `Sub`) must be specified --> $DIR/missing-associated-types.rs:15:21 | LL | type A; | ------ `A` defined here LL | type B; | ------ `B` defined here ... LL | type Bar = dyn Add + Sub + X + Z; | ^^^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^ associated types `A`, `B`, `Output` must be specified | | | | | | | associated types `Output` (from trait `Mul`), `Output` (from trait `Div`) must be specified | | associated type `Output` must be specified | associated type `Output` must be specified | help: consider introducing a new type parameter, adding `where` constraints using the fully-qualified path to the associated types --> $DIR/missing-associated-types.rs:15:43 | LL | type Bar = dyn Add + Sub + X + Z; | ^^^^^^ help: specify the associated types | LL | type Bar = dyn Add + Sub + X + Z; | ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error[E0225]: only auto traits can be used as additional traits in a trait object --> $DIR/missing-associated-types.rs:18:32 | LL | type Baz = dyn Add + Sub + Y; | -------- ^^^^^^^^ 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: Add + Sub + Y {}` = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit error[E0191]: the value of the associated types `A` (from trait `Y`), `Output` (from trait `Add`), `Output` (from trait `Sub`) must be specified --> $DIR/missing-associated-types.rs:18:21 | LL | type A; | ------ `A` defined here ... LL | type Baz = dyn Add + Sub + Y; | ^^^^^^^^ ^^^^^^^^ ^^^^^^ associated type `A` must be specified | | | | | associated type `Output` must be specified | associated type `Output` must be specified | help: specify the associated types | LL | type Baz = dyn Add + Sub + Y; | ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~ error[E0225]: only auto traits can be used as additional traits in a trait object --> $DIR/missing-associated-types.rs:21:32 | LL | type Bat = dyn Add + Sub + Fine; | -------- ^^^^^^^^ 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: Add + Sub + Fine {}` = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit error[E0191]: the value of the associated types `Output` (from trait `Add`), `Output` (from trait `Sub`) must be specified --> $DIR/missing-associated-types.rs:21:21 | LL | type Bat = dyn Add + Sub + Fine; | ^^^^^^^^ ^^^^^^^^ associated type `Output` must be specified | | | associated type `Output` must be specified | help: specify the associated types | LL | type Bat = dyn Add + Sub + Fine; | ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ error[E0191]: the value of the associated types `Output` (from trait `Div`), `Output` (from trait `Mul`) must be specified --> $DIR/missing-associated-types.rs:24:21 | LL | type Bal = dyn X; | ^^^^^^ associated types `Output` (from trait `Mul`), `Output` (from trait `Div`) must be specified | = help: consider introducing a new type parameter, adding `where` constraints using the fully-qualified path to the associated types error: aborting due to 9 previous errors Some errors have detailed explanations: E0191, E0225. For more information about an error, try `rustc --explain E0191`.