I just noticed that primitiveCopyBits ignores write barriers as well. If destForm isReadOnlyObject or destForm bits isReadOnlyObjects, the primitive will manipulate the form anyway (presumably the remaining variables of the form are not protected as well; I did not test it).