In a recent PR [it was pointed out](https://github.com/rust-lang/rust/pull/33777#issuecomment-225425608) that cloning a Cow shouldn't ever need to allocate - the cloned Cow could borrow a pointer to the original.