Isn't this an API break?

If yes, please leave it be and just do casts in the `atomicOp` calls (not like `shared` actually does anything anyway).