to make the copy constructor and destructor protected, and corresponding adjustments to the unittests. llvm-svn: 70644