error[E0393]: the type parameter `Rhs` must be explicitly specified --> $DIR/issue-22560.rs:6:13 | LL | Sub; | ^^^ help: set the type parameter to the desired type: `Sub` | ::: $SRC_DIR/libcore/ops/arith.rs:LL:COL | LL | / pub trait Sub { LL | | /// The resulting type after applying the `-` operator. LL | | #[stable(feature = "rust1", since = "1.0.0")] LL | | type Output; ... | LL | | fn sub(self, rhs: Rhs) -> Self::Output; LL | | } | |_- type parameter `Rhs` must be specified for this | = note: because of the default `Self` reference, type parameters must be specified on object types error[E0393]: the type parameter `Rhs` must be explicitly specified --> $DIR/issue-22560.rs:3:17 | LL | type Test = dyn Add + | ^^^ help: set the type parameter to the desired type: `Add` | ::: $SRC_DIR/libcore/ops/arith.rs:LL:COL | LL | / pub trait Add { LL | | /// The resulting type after applying the `+` operator. LL | | #[stable(feature = "rust1", since = "1.0.0")] LL | | type Output; ... | LL | | fn add(self, rhs: Rhs) -> Self::Output; LL | | } | |_- type parameter `Rhs` must be specified for this | = note: because of the default `Self` reference, type parameters must be specified on object types error[E0225]: only auto traits can be used as additional traits in a trait object --> $DIR/issue-22560.rs:6:13 | LL | type Test = dyn Add + | --- | | | first non-auto trait | trait alias used in trait object type (first use) ... LL | Sub; | ^^^ | | | additional non-auto trait | trait alias used in trait object type (additional use) error[E0191]: the value of the associated types `Output` (from trait `std::ops::Add`), `Output` (from trait `std::ops::Sub`) must be specified --> $DIR/issue-22560.rs:3:13 | LL | type Test = dyn Add + | _____________^ LL | | LL | | LL | | Sub; | |_______________^ associated types `Output`, `Output` must be specified error: aborting due to 4 previous errors Some errors have detailed explanations: E0191, E0225, E0393. For more information about an error, try `rustc --explain E0191`.