| //@ check-pass | |
| #![allow(dead_code)] | |
| // Tests that impls are allowed to have looser, more permissive bounds | |
| // than the traits require. | |
| trait A { | |
| fn b<C:Sync,D>(&self, x: C) -> C; | |
| } | |
| struct E { | |
| f: isize | |
| } | |
| impl A for E { | |
| fn b<F,G>(&self, _x: F) -> F { panic!() } | |
| } | |
| pub fn main() {} |