]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR libstdc++/61728 (lost symbol FUNC:_ZNK10__cxxabiv117__pbase_type_info15__pointe...
authorJason Merrill <jason@redhat.com>
Wed, 9 Jul 2014 22:21:49 +0000 (18:21 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Wed, 9 Jul 2014 22:21:49 +0000 (18:21 -0400)
PR libstdc++/61728
* libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
* libsupc++/tinfo.h: Not here.

From-SVN: r212413

libstdc++-v3/ChangeLog
libstdc++-v3/libsupc++/cxxabi.h
libstdc++-v3/libsupc++/tinfo.h

index 7e03e7953c62bec0a63aeffe91aff6018d182a2b..95c8aadb463cde98e881de242ebee0c547d3e9b1 100644 (file)
@@ -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
index 5b77aee9e6c5eab0c824fd5554928e411a09b393..4d9458c2e84b15d38eea559d56ac740483ded232 100644 (file)
@@ -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
   {
index 7c55f02376f663a6f566075cec34233851e8d9e0..3421a5c6253390d009608b4fde4a0749d6c2107c 100644 (file)
 
 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;