diff options
Diffstat (limited to 'libcxx/include/memory')
-rw-r--r-- | libcxx/include/memory | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/libcxx/include/memory b/libcxx/include/memory index f80d699fc0d..4e1f704681b 100644 --- a/libcxx/include/memory +++ b/libcxx/include/memory @@ -3629,10 +3629,13 @@ public: long use_count() const _NOEXCEPT {return __shared_count::use_count();} __shared_weak_count* lock() _NOEXCEPT; - // purposefully not protected with #ifndef _LIBCPP_NO_RTTI because doing so - // breaks ABI for those clients who need to compile their projects with - // -fno-rtti and yet link against a libc++.dylib compiled without -fno-rtti. + // Define the function out only if we build static libc++ without RTTI. + // Otherwise we may break clients who need to compile their projects with + // -fno-rtti and yet link against a libc++.dylib compiled + // without -fno-rtti. +#if !defined(_LIBCPP_NO_RTTI) || !defined(_LIBCPP_BUILD_STATIC) virtual const void* __get_deleter(const type_info&) const _NOEXCEPT; +#endif private: virtual void __on_zero_shared_weak() _NOEXCEPT = 0; }; |