typeinfo: Correctly match #pragma GCC visibility pop with #pragma GCC visibility...
authorRafael Ávila de Espíndola <rafael.espindola@gmail.com>
Fri, 27 Jan 2012 19:38:56 +0000 (19:38 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Fri, 27 Jan 2012 19:38:56 +0000 (19:38 +0000)
2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>

* libsupc++/typeinfo: Correctly match #pragma GCC visibility
pop with #pragma GCC visibility push.

From-SVN: r183641

libstdc++-v3/ChangeLog
libstdc++-v3/libsupc++/typeinfo

index 923708f8a38b99faf2ce203ff67ea7539c6ae28d..0a455335ad7ef046a4671d32625a17cbcda26069 100644 (file)
@@ -1,3 +1,8 @@
+2011-01-27  Rafael Avila de Espindola  <rafael.espindola@gmail.com>
+
+       * libsupc++/typeinfo: Correctly match #pragma GCC visibility
+       pop with #pragma GCC visibility push.
+
 2012-01-27  Benjamin Kosnik  <bkoz@redhat.com>
            Matthias Klose  <doko@ubuntu.com>
 
index aaa756bfebcd29e6e853c63c92f6ed8f934c9f17..f0382d64f7653c28d355b729b122f29899054974 100644 (file)
@@ -1,6 +1,6 @@
 // RTTI support for -*- C++ -*-
 // Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-// 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011
+// 2003, 2004, 2005, 2006, 2007, 2009, 2010, 2011, 2012
 // Free Software Foundation
 //
 // This file is part of GCC.
@@ -9,12 +9,12 @@
 // it under the terms of the GNU General Public License as published by
 // the Free Software Foundation; either version 3, or (at your option)
 // any later version.
-// 
+//
 // GCC is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 // GNU General Public License for more details.
-// 
+//
 // Under Section 7 of GPL version 3, you are granted additional
 // permissions described in the GCC Runtime Library Exception, version
 // 3.1, as published by the Free Software Foundation.
@@ -38,7 +38,6 @@
 #include <bits/hash_bytes.h>
 #endif
 
-
 #pragma GCC visibility push(default)
 
 extern "C++" {
@@ -80,7 +79,7 @@ namespace __cxxabiv1
   #endif
 #endif
 
-namespace std 
+namespace std
 {
   /**
    *  @brief  Part of RTTI.
@@ -88,7 +87,7 @@ namespace std
    *  The @c type_info class describes type information generated by
    *  an implementation.
   */
-  class type_info 
+  class type_info
   {
   public:
     /** Destructor first. Being the first non-inline virtual function, this
@@ -172,9 +171,9 @@ namespace std
 
   protected:
     const char *__name;
-    
+
     explicit type_info(const char *__n): __name(__n) { }
-    
+
   private:
     /// Assigning type_info is not supported.
     type_info& operator=(const type_info&);
@@ -187,7 +186,7 @@ namespace std
    *
    *  If you attempt an invalid @c dynamic_cast expression, an instance of
    *  this class (or something derived from this class) is thrown.  */
-  class bad_cast : public exception 
+  class bad_cast : public exception
   {
   public:
     bad_cast() _GLIBCXX_USE_NOEXCEPT { }
@@ -199,12 +198,12 @@ namespace std
     // See comment in eh_exception.cc.
     virtual const char* what() const _GLIBCXX_USE_NOEXCEPT;
   };
-  
-  /** 
+
+  /**
    *  @brief Thrown when a NULL pointer in a @c typeid expression is used.
    *  @ingroup exceptions
    */
-  class bad_typeid : public exception 
+  class bad_typeid : public exception
   {
   public:
     bad_typeid () _GLIBCXX_USE_NOEXCEPT { }
@@ -218,7 +217,8 @@ namespace std
   };
 } // namespace std
 
+} // extern "C++"
+
 #pragma GCC visibility pop
 
-} // extern "C++"
 #endif