Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/llvm/llvm-project.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShoaib Meenai <smeenai@fb.com>2017-03-01 06:55:57 +0300
committerShoaib Meenai <smeenai@fb.com>2017-03-01 06:55:57 +0300
commitfe989a98176a7215cdbbcedcdf65e630f40a0d80 (patch)
tree125d0e26698eee336bc9d32b8635c92cb0fb7acd /libcxxabi/src/private_typeinfo.h
parent175ffa8c35c7949330ca67f01e0d509631b9781e (diff)
[libc++abi] Clean up visibility
Use the libc++abi visibility macros instead of pragmas or using visibility attributes directly. Clean up redundant attributes on definitions (where the declarations already have visibility attributes applied, from either libc++ or libc++abi headers). Introduce _LIBCXXABI_WEAK as a drive-by cleanup, which matches the semantics of _LIBCPP_WEAK. No functional change. Tested by building on Linux before and after this change and verifying that the list of exported symbols is identical. Differential Revision: https://reviews.llvm.org/D26949 llvm-svn: 296576
Diffstat (limited to 'libcxxabi/src/private_typeinfo.h')
-rw-r--r--libcxxabi/src/private_typeinfo.h7
1 files changed, 2 insertions, 5 deletions
diff --git a/libcxxabi/src/private_typeinfo.h b/libcxxabi/src/private_typeinfo.h
index f3d3e1dc3c95..3922ae6ef56e 100644
--- a/libcxxabi/src/private_typeinfo.h
+++ b/libcxxabi/src/private_typeinfo.h
@@ -16,7 +16,6 @@
#include <cstddef>
namespace __cxxabiv1 {
-#pragma GCC visibility push(hidden)
class _LIBCXXABI_TYPE_VIS __shim_type_info : public std::type_info {
public:
@@ -67,7 +66,7 @@ enum
class _LIBCXXABI_TYPE_VIS __class_type_info;
-struct __dynamic_cast_info
+struct _LIBCXXABI_HIDDEN __dynamic_cast_info
{
// const data supplied to the search:
@@ -153,7 +152,7 @@ public:
has_unambiguous_public_base(__dynamic_cast_info *, void *, int) const;
};
-struct __base_class_type_info
+struct _LIBCXXABI_HIDDEN __base_class_type_info
{
public:
const __class_type_info* __base_type;
@@ -248,8 +247,6 @@ public:
_LIBCXXABI_HIDDEN bool can_catch_nested(const __shim_type_info *) const;
};
-#pragma GCC visibility pop
-
} // __cxxabiv1
#endif // __PRIVATE_TYPEINFO_H_