Please add tests for the case where the type before the ::~ instantiates as an enum type, in both C++98 and C++11. Otherwise, this looks fine. Thanks! http://reviews.llvm.org/D5769