I'm not really sure why it isn't. It can only ever hold Copy data and Cell::new(some_cell.get()) has the same effect as a memcpy, so the effect of not making it Copy is mostly to just make it annoying to use types with Cells in them (since you can't #[derive(Copy)] on them, use them with the [Foo ; n] instantiation syntax in fixed-size arrays, put them in other Cells, etc.).
I'm not really sure why it isn't. It can only ever hold
Copydata andCell::new(some_cell.get())has the same effect as a memcpy, so the effect of not making itCopyis mostly to just make it annoying to use types withCells in them (since you can't#[derive(Copy)]on them, use them with the[Foo ; n]instantiation syntax in fixed-size arrays, put them in otherCells, etc.).