Final version prior to merge of C_PRIMITIVE and C_PRIMITIVE_OBJECT, and removal of C_DOMAIN _TYPE.