"With a maximum reference count of 1." As the reference count becomes 1 upon object creation, it cannot really be increased further. Hence, only operations that keep the (virtual) reference count at 1 or reduce it to 0 are allowed.
My point here is that you inherently cannot do things where you cannot prove that this virtual reference count can be capped at 1.