Clang 3.6+ warns about "expression with side effects will be evaluated despite being used as an operand to 'typeid'" if Ptr<> is used as an argument to typeid(). This changes the code to use raw pointers instead of Ptr<>.
Clang 3.6+ warns about "expression with side effects will be evaluated despite being used as an operand to 'typeid'" if Ptr<> is used as an argument to typeid(). This changes the code to use raw pointers instead of Ptr<>.