diff --git a/libcxxabi/src/private_typeinfo.cpp b/libcxxabi/src/private_typeinfo.cpp index 13fbd32352f4..0abf87fd38f4 100644 --- a/libcxxabi/src/private_typeinfo.cpp +++ b/libcxxabi/src/private_typeinfo.cpp @@ -218,15 +218,7 @@ __pointer_to_member_type_info::display() const // // catch (...) : adjustedPtr == & of the exception -bool -__shim_type_info::can_catch(const __shim_type_info* thrown_type, - void*&) const -{ - return this == thrown_type; -} - // Handles bullet 1 -// TODO: Let __shim_type_info handle it? bool __fundamental_type_info::can_catch(const __shim_type_info* thrown_type, void*&) const @@ -257,7 +249,6 @@ __function_type_info::can_catch(const __shim_type_info* thrown_type, } // Handles bullet 1 -// TODO: Let __shim_type_info handle it? bool __enum_type_info::can_catch(const __shim_type_info* thrown_type, void*&) const diff --git a/libcxxabi/src/private_typeinfo.h b/libcxxabi/src/private_typeinfo.h index 0569243f3b91..87472fc95c1d 100644 --- a/libcxxabi/src/private_typeinfo.h +++ b/libcxxabi/src/private_typeinfo.h @@ -24,7 +24,7 @@ class __shim_type_info public: virtual ~__shim_type_info(); - virtual bool can_catch(const __shim_type_info* thrown_type, void*& adjustedPtr) const; + virtual bool can_catch(const __shim_type_info* thrown_type, void*& adjustedPtr) const = 0; #ifdef DEBUG virtual void display() const = 0; #endif