#![feature(auto_traits)] #![feature(negative_impls)] auto trait MyTrait {} impl !MyTrait for *mut T {} struct MyS; struct MyS2; impl !MyTrait for MyS2 {} struct MyS3; fn is_mytrait() {} fn main() { is_mytrait::(); is_mytrait::(); //~^ ERROR `MyS2: MyTrait` is not satisfied }