--- /dev/null
+error[E0308]: mismatched types
+ --> $DIR/coerce-reborrow-multi-arg-fail.rs:4:18
+ |
+LL | test(&mut 7, &7);
+ | ^^ types differ in mutability
+ |
+ = note: expected mutable reference `&mut {integer}`
+ found reference `&{integer}`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0308`.
--- /dev/null
+// build-pass
+fn test<T>(_a: T, _b: T) {}
+
+fn main() {
+ test(&7, &7);
+ test(&7, &mut 7);
+ test::<&i32>(&mut 7, &7);
+ test::<&i32>(&mut 7, &mut 7);
+}