I think that `Cell` would work because you can't borrow it, and `RefCell` would work because it guarantees only one mutable borrow at a time. In theory, though `Unsafe` does stop the optimization.

Regardless, I got some [measurements](https://gist.github.com/alexcrichton/9ed83a7252b66b432f02) which look like the `RefCell` doesn't add much overhead.