hashtable: Use __throw_exception_again, not naked throw, in the catch clauses.
authorPaolo Carlini <pcarlini@suse.de>
Thu, 25 Aug 2005 09:34:49 +0000 (09:34 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Thu, 25 Aug 2005 09:34:49 +0000 (09:34 +0000)
2005-08-25  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/hashtable: Use __throw_exception_again,
not naked throw, in the catch clauses.

From-SVN: r103483

libstdc++-v3/ChangeLog
libstdc++-v3/include/tr1/hashtable

index 5145d6f..83ec793 100644 (file)
@@ -1,3 +1,8 @@
+2005-08-25  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/hashtable: Use __throw_exception_again,
+       not naked throw, in the catch clauses.
+
 2005-08-24  Lawrence Lim  <llim@redhat.com>
             Jakub Jelinek  <jakub@redhat.com>
            Benjamin Kosnik  <bkoz@redhat.com>
index 4245e97..af43da2 100644 (file)
@@ -59,6 +59,7 @@
 #include <cstddef>
 #include <cstdlib>
 #include <cmath>
+#include <bits/functexcept.h>
 #include <tr1/type_traits>     // For true_type and false_type
 
 //----------------------------------------------------------------------
@@ -1122,7 +1123,7 @@ namespace tr1
       catch(...)
        {
          m_node_allocator.deallocate(n, 1);
-         throw;
+         __throw_exception_again;
        }
     }
 
@@ -1244,7 +1245,7 @@ namespace tr1
          {
            clear();
            m_deallocate_buckets(m_buckets, m_bucket_count);
-           throw;
+           __throw_exception_again;
          }
       }
   
@@ -1282,7 +1283,7 @@ namespace tr1
        {
          clear();
          m_deallocate_buckets (m_buckets, m_bucket_count);
-         throw;
+         __throw_exception_again;
        }
     }
 
@@ -1513,7 +1514,7 @@ namespace tr1
       catch (...)
        {
          m_deallocate_node (new_node);
-         throw;
+         __throw_exception_again;
        }
     }
   
@@ -1691,7 +1692,7 @@ namespace tr1
          m_deallocate_buckets(new_array, N);
          m_deallocate_nodes(m_buckets, m_bucket_count);
          m_element_count = 0;
-         throw;
+         __throw_exception_again;
        }
     }