1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#![feature(auto_traits)] #![feature(negative_impls)] auto trait MyTrait {} struct MyS; struct MyS2; impl !MyTrait for MyS2 {} fn is_mytrait<T: MyTrait>() {} fn main() { is_mytrait::<MyS>(); is_mytrait::<(MyS2, MyS)>(); //~^ ERROR `MyS2: MyTrait` is not satisfied }