| fn require_copy<T: Copy>(x: T) {} | |
| struct Foo<T> { x: T } | |
| // Ensure constraints are only attached to methods locally | |
| impl<T> Foo<T> { | |
| fn needs_copy(self) where T: Copy { | |
| require_copy(self.x); | |
| } | |
| fn fails_copy(self) { | |
| require_copy(self.x); | |
| //~^ ERROR the trait bound `T: Copy` is not satisfied | |
| } | |
| } | |
| fn main() {} |