error[E0368]: binary assignment operation `+=` cannot be applied to type `T`
  --> $DIR/issue-6738.rs:6:9
   |
LL |         self.x += v.x;
   |         ------^^^^^^^
   |         |
   |         cannot use `+=` on type `T`
   |
help: consider restricting type parameter `T`
   |
LL | impl<T: std::ops::AddAssign> Foo<T> {
   |       +++++++++++++++++++++

error: aborting due to previous error

For more information about this error, try `rustc --explain E0368`.