error[E0277]: `&&&&&Enumerate<std::slice::Iter<'_, {integer}>>` is not an iterator
  --> $DIR/suggest-remove-refs-2.rs:6:19
   |
LL |     for (i, _) in & & & & &v.iter().enumerate() {
   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `&&&&&Enumerate<std::slice::Iter<'_, {integer}>>` is not an iterator
   |
   = help: the trait `Iterator` is not implemented for `&&&&&Enumerate<std::slice::Iter<'_, {integer}>>`, which is required by `&&&&&Enumerate<std::slice::Iter<'_, {integer}>>: IntoIterator`
   = note: required for `&&&&&Enumerate<std::slice::Iter<'_, {integer}>>` to implement `IntoIterator`
help: consider removing 5 leading `&`-references
   |
LL -     for (i, _) in & & & & &v.iter().enumerate() {
LL +     for (i, _) in v.iter().enumerate() {
   |

error: aborting due to 1 previous error

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