diff options
author | Jason Merrill <jason@redhat.com> | 2014-07-09 18:21:49 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2014-07-09 18:21:49 -0400 |
commit | a6ea72bf8296fcb351b76e4f0c11763bc5ae1505 (patch) | |
tree | ade1c4c15fdc7664170cea55d36cff83e2d3cd49 /libstdc++-v3 | |
parent | 84b64170630dee8583c444e6dbf9df00fe6e88b5 (diff) | |
download | gcc-a6ea72bf8296fcb351b76e4f0c11763bc5ae1505.zip gcc-a6ea72bf8296fcb351b76e4f0c11763bc5ae1505.tar.gz gcc-a6ea72bf8296fcb351b76e4f0c11763bc5ae1505.tar.bz2 |
re PR libstdc++/61728 (lost symbol FUNC:_ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj@@CXXABI_1.3)
PR libstdc++/61728
* libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
* libsupc++/tinfo.h: Not here.
From-SVN: r212413
Diffstat (limited to 'libstdc++-v3')
-rw-r--r-- | libstdc++-v3/ChangeLog | 6 | ||||
-rw-r--r-- | libstdc++-v3/libsupc++/cxxabi.h | 12 | ||||
-rw-r--r-- | libstdc++-v3/libsupc++/tinfo.h | 8 |
3 files changed, 16 insertions, 10 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 7e03e79..95c8aad 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2014-07-09 Jason Merrill <jason@redhat.com> + + PR libstdc++/61728 + * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here. + * libsupc++/tinfo.h: Not here. + 2014-07-08 Jonathan Wakely <jwakely@redhat.com> * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add diff --git a/libstdc++-v3/libsupc++/cxxabi.h b/libstdc++-v3/libsupc++/cxxabi.h index 5b77aee..4d9458c 100644 --- a/libstdc++-v3/libsupc++/cxxabi.h +++ b/libstdc++-v3/libsupc++/cxxabi.h @@ -298,11 +298,19 @@ namespace __cxxabiv1 __do_catch(const std::type_info* __thr_type, void** __thr_obj, unsigned int __outer) const; - virtual bool + inline virtual bool __pointer_catch(const __pbase_type_info* __thr_type, void** __thr_obj, - unsigned __outer) const = 0; + unsigned __outer) const; }; + inline bool __pbase_type_info:: + __pointer_catch (const __pbase_type_info *thrown_type, + void **thr_obj, + unsigned outer) const + { + return __pointee->__do_catch (thrown_type->__pointee, thr_obj, outer + 2); + } + // Type information for simple pointers. class __pointer_type_info : public __pbase_type_info { diff --git a/libstdc++-v3/libsupc++/tinfo.h b/libstdc++-v3/libsupc++/tinfo.h index 7c55f02..3421a5c 100644 --- a/libstdc++-v3/libsupc++/tinfo.h +++ b/libstdc++-v3/libsupc++/tinfo.h @@ -31,14 +31,6 @@ namespace __cxxabiv1 { -inline bool __pbase_type_info:: -__pointer_catch (const __pbase_type_info *thrown_type, - void **thr_obj, - unsigned outer) const -{ - return __pointee->__do_catch (thrown_type->__pointee, thr_obj, outer + 2); -} - namespace { using namespace std; |