fn main() { // Note: explicit type annot is required here // because otherwise the inference gets smart // and assigns a type of [mut [const int]/~]/~. let v: [mut [mut int]/~]/~ = [mut [mut 0]/~]/~; fn f(&&v: [mut [const int]/~]/~) { v[0] = [3] } f(v); //! ERROR (values differ in mutability) }