// check-pass
#![feature(with_negative_coherence)]
use std::ops::DerefMut;
trait Foo {}
impl<T: DerefMut> Foo for T {}
impl<U> Foo for &U {}
fn main() {}