// run-pass
// Tests that type parameter bounds on an implementation need not match the
// trait exactly, as long as the implementation doesn't demand *more* bounds
// than the trait.

// pretty-expanded FIXME #23616

trait A {
    fn foo<T: Eq + Ord>(&self);
}

impl A for isize {
    fn foo<T: Ord>(&self) {} // Ord implies Eq, so this is ok.
}

fn main() {}
