// check-pass #![feature(negative_impls)] #![feature(rustc_attrs)] #![feature(with_negative_coherence)] #[rustc_strict_coherence] trait Foo {} impl !Foo for &T where T: 'static {} #[rustc_strict_coherence] trait Bar {} impl Bar for T {} impl Bar for &T where T: 'static {} fn main() {}