error[E0596]: cannot borrow `*a` as mutable, as `a` is not declared as mutable
  --> $DIR/borrowck-borrow-immut-deref-of-box-as-mut.rs:12:5
   |
LL |     a.foo();
   |     ^ cannot borrow as mutable
   |
help: consider changing this to be mutable
   |
LL |     let mut a: Box<_> = Box::new(A);
   |         +++

error: aborting due to 1 previous error

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