typeinfo: Correctly match #pragma GCC visibility pop with #pragma GCC visibility push.

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
This commit is contained in:
Rafael Ávila de Espíndola 2012-01-27 19:38:56 +00:00 committed by Benjamin Kosnik
parent 38ee081588
commit b939d4f696
2 changed files with 18 additions and 13 deletions

View 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>

View 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