1 use std::fmt::Debug; 2 use std::default::Default; 3 4 // Test that two blanket impls conflict (at least without negative 5 // bounds). After all, some other crate could implement Even or Odd 6 // for the same type (though this crate doesn't). 7 8 trait MyTrait { get(&self) -> usize9 fn get(&self) -> usize; 10 } 11 12 trait Even { } 13 14 trait Odd { } 15 16 impl Even for isize { } 17 18 impl Odd for usize { } 19 20 impl<T:Even> MyTrait for T { get(&self) -> usize21 fn get(&self) -> usize { 0 } 22 } 23 24 impl<T:Odd> MyTrait for T { 25 //~^ ERROR E0119 26 get(&self) -> usize27 fn get(&self) -> usize { 0 } 28 } 29 main()30fn main() { } 31