summaryrefslogtreecommitdiff
path: root/boost/core/demangle.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/core/demangle.hpp')
-rw-r--r--boost/core/demangle.hpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/boost/core/demangle.hpp b/boost/core/demangle.hpp
index eebd0ce0f1..44aeb8ded7 100644
--- a/boost/core/demangle.hpp
+++ b/boost/core/demangle.hpp
@@ -27,8 +27,15 @@
#if defined( BOOST_CORE_HAS_CXXABI_H )
# include <cxxabi.h>
-# include <cstdlib>
-# include <cstddef>
+// For some archtectures (mips, mips64, x86, x86_64) cxxabi.h in Android NDK is implemented by gabi++ library
+// (https://android.googlesource.com/platform/ndk/+/master/sources/cxx-stl/gabi++/), which does not implement
+// abi::__cxa_demangle(). We detect this implementation by checking the include guard here.
+# if defined( __GABIXX_CXXABI_H__ )
+# undef BOOST_CORE_HAS_CXXABI_H
+# else
+# include <cstdlib>
+# include <cstddef>
+# endif
#endif
namespace boost