fda3378e3f
They used to be covered by `optin_builtin_traits` but negative impls are now applicable to all traits, not just auto traits. This also adds docs in the unstable book for the current state of auto traits.
17 lines
575 B
Rust
17 lines
575 B
Rust
#![feature(optin_builtin_traits)]
|
|
#![feature(negative_impls)]
|
|
#![allow(bare_trait_objects)]
|
|
|
|
auto trait Auto {}
|
|
|
|
fn main() {
|
|
let _: Box<((Auto)) + Auto>;
|
|
//~^ ERROR expected a path on the left-hand side of `+`, not `((Auto))`
|
|
let _: Box<(Auto + Auto) + Auto>;
|
|
//~^ ERROR expected a path on the left-hand side of `+`, not `(Auto + Auto)`
|
|
let _: Box<(Auto +) + Auto>;
|
|
//~^ ERROR expected a path on the left-hand side of `+`, not `(Auto)`
|
|
let _: Box<(dyn Auto) + Auto>;
|
|
//~^ ERROR expected a path on the left-hand side of `+`, not `(dyn Auto)`
|
|
}
|