1*67e74705SXin Li // RUN: %clang_cc1 -emit-llvm %s -o - 2*67e74705SXin Li namespace std { 3*67e74705SXin Li class exception { }; 4*67e74705SXin Li 5*67e74705SXin Li class type_info { 6*67e74705SXin Li public: 7*67e74705SXin Li virtual ~type_info(); 8*67e74705SXin Li }; 9*67e74705SXin Li 10*67e74705SXin Li } 11*67e74705SXin Li 12*67e74705SXin Li namespace __cxxabiv1 { 13*67e74705SXin Li class __si_class_type_info : public std::type_info { 14*67e74705SXin Li ~__si_class_type_info(); 15*67e74705SXin Li }; 16*67e74705SXin Li } 17*67e74705SXin Li 18*67e74705SXin Li class recursive_init: public std::exception { 19*67e74705SXin Li public: 20*67e74705SXin Li virtual ~recursive_init() throw (); 21*67e74705SXin Li }; 22*67e74705SXin Li ~recursive_init()23*67e74705SXin Lirecursive_init::~recursive_init() throw() { } 24