blob: b0e0d8aeb5638fefffa9ee677de0b4ffd1d1526d [file] [log] [blame]
//@ run-rustfix
#![allow(unused_mut)]
#![allow(dead_code)]
pub trait Layer {
fn process(&mut self) -> u32;
}
pub struct State {
layers: Vec<Box<dyn Layer>>,
}
impl State {
pub fn process(&mut self) -> u32 {
self.layers.iter().fold(0, |result, mut layer| result + layer.process())
//~^ ERROR cannot borrow `**layer` as mutable, as it is behind a `&` reference
}
}
fn main() {}