summaryrefslogtreecommitdiff
path: root/libcxxabi/include
diff options
context:
space:
mode:
authorShoaib Meenai <smeenai@fb.com>2017-03-01 03:55:57 +0000
committerShoaib Meenai <smeenai@fb.com>2017-03-01 03:55:57 +0000
commitfe989a98176a7215cdbbcedcdf65e630f40a0d80 (patch)
tree125d0e26698eee336bc9d32b8635c92cb0fb7acd /libcxxabi/include
parent175ffa8c35c7949330ca67f01e0d509631b9781e (diff)
downloadllvm-fe989a98176a7215cdbbcedcdf65e630f40a0d80.tar.gz
[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/include')
-rw-r--r--libcxxabi/include/__cxxabi_config.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/libcxxabi/include/__cxxabi_config.h b/libcxxabi/include/__cxxabi_config.h
index e51b37750135..1624f125a063 100644
--- a/libcxxabi/include/__cxxabi_config.h
+++ b/libcxxabi/include/__cxxabi_config.h
@@ -56,4 +56,10 @@
#endif
#endif
+#if defined(_WIN32)
+#define _LIBCXXABI_WEAK
+#else
+#define _LIBCXXABI_WEAK __attribute__((__weak__))
+#endif
+
#endif // ____CXXABI_CONFIG_H