diff options
Diffstat (limited to 'libcxx/src')
45 files changed, 93 insertions, 0 deletions
diff --git a/libcxx/src/algorithm.cpp b/libcxx/src/algorithm.cpp index d388fee..74d8a62 100644 --- a/libcxx/src/algorithm.cpp +++ b/libcxx/src/algorithm.cpp @@ -10,6 +10,7 @@ #include <bit> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS template <class Comp, class RandomAccessIterator> void __sort(RandomAccessIterator first, RandomAccessIterator last, Comp comp) { @@ -44,4 +45,5 @@ template void __sort<__less<double>&, double*>(double*, double*, __less<double>& template void __sort<__less<long double>&, long double*>(long double*, long double*, __less<long double>&); // clang-format on +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/any.cpp b/libcxx/src/any.cpp index eaca2dd..8f7e884 100644 --- a/libcxx/src/any.cpp +++ b/libcxx/src/any.cpp @@ -17,6 +17,7 @@ const char* bad_any_cast::what() const noexcept { return "bad any cast"; } // Preserve std::experimental::any_bad_cast for ABI compatibility // Even though it no longer exists in a header file _LIBCPP_BEGIN_NAMESPACE_LFTS +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS class _LIBCPP_EXPORTED_FROM_ABI _LIBCPP_AVAILABILITY_BAD_ANY_CAST bad_any_cast : public bad_cast { public: @@ -25,4 +26,5 @@ public: const char* bad_any_cast::what() const noexcept { return "bad any cast"; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_LFTS diff --git a/libcxx/src/atomic.cpp b/libcxx/src/atomic.cpp index c1af8d6..2a01e66 100644 --- a/libcxx/src/atomic.cpp +++ b/libcxx/src/atomic.cpp @@ -50,6 +50,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #ifdef __linux__ @@ -204,4 +205,5 @@ __libcpp_atomic_wait(__cxx_atomic_contention_t const volatile* __location, __cxx __libcpp_contention_wait(&__libcpp_contention_state(__location)->__contention_state, __location, __old_value); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/barrier.cpp b/libcxx/src/barrier.cpp index 868f1bf..f3b380d 100644 --- a/libcxx/src/barrier.cpp +++ b/libcxx/src/barrier.cpp @@ -10,6 +10,7 @@ #include <thread> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS class __barrier_algorithm_base { public: @@ -68,4 +69,5 @@ _LIBCPP_EXPORTED_FROM_ABI void __destroy_barrier_algorithm_base(__barrier_algori delete __barrier; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/call_once.cpp b/libcxx/src/call_once.cpp index 237969a..015b874 100644 --- a/libcxx/src/call_once.cpp +++ b/libcxx/src/call_once.cpp @@ -17,6 +17,7 @@ #include "include/atomic_support.h" _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS // If dispatch_once_f ever handles C++ exceptions, and if one can get to it // without illegal macros (unexpected macros not beginning with _UpperCase or @@ -68,4 +69,5 @@ void __call_once(volatile once_flag::_State_type& flag, void* arg, void (*func)( #endif // !_LIBCPP_HAS_THREADS } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/charconv.cpp b/libcxx/src/charconv.cpp index 5e8cb7d9..90aac88 100644 --- a/libcxx/src/charconv.cpp +++ b/libcxx/src/charconv.cpp @@ -13,6 +13,7 @@ #include "include/to_chars_floating_point.h" _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #ifndef _LIBCPP_ABI_DO_NOT_EXPORT_TO_CHARS_BASE_10 @@ -86,4 +87,6 @@ template __from_chars_result<float> __from_chars_floating_point( template __from_chars_result<double> __from_chars_floating_point( _LIBCPP_NOESCAPE const char* __first, _LIBCPP_NOESCAPE const char* __last, chars_format __fmt); + +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/chrono.cpp b/libcxx/src/chrono.cpp index 20387ea..eb5c443 100644 --- a/libcxx/src/chrono.cpp +++ b/libcxx/src/chrono.cpp @@ -64,6 +64,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS namespace chrono { @@ -262,4 +263,5 @@ steady_clock::time_point steady_clock::now() noexcept { return __libcpp_steady_c } // namespace chrono +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/condition_variable.cpp b/libcxx/src/condition_variable.cpp index a87399d..8248719 100644 --- a/libcxx/src/condition_variable.cpp +++ b/libcxx/src/condition_variable.cpp @@ -23,6 +23,7 @@ _LIBCPP_PUSH_MACROS #include <__undef_macros> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS // ~condition_variable is defined elsewhere. @@ -72,6 +73,7 @@ void notify_all_at_thread_exit(condition_variable& cond, unique_lock<mutex> lk) __thread_local_data()->notify_all_at_thread_exit(&cond, lk.release()); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD _LIBCPP_POP_MACROS diff --git a/libcxx/src/condition_variable_destructor.cpp b/libcxx/src/condition_variable_destructor.cpp index f6ffe33..02b2c1bb 100644 --- a/libcxx/src/condition_variable_destructor.cpp +++ b/libcxx/src/condition_variable_destructor.cpp @@ -19,6 +19,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #ifdef NEEDS_CONDVAR_DESTRUCTOR @@ -37,4 +38,5 @@ public: condition_variable::~condition_variable() { __libcpp_condvar_destroy(&__cv_); } #endif +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/error_category.cpp b/libcxx/src/error_category.cpp index 8ae460f..fe8d939 100644 --- a/libcxx/src/error_category.cpp +++ b/libcxx/src/error_category.cpp @@ -15,6 +15,7 @@ #include <system_error> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS // class error_category @@ -34,4 +35,5 @@ bool error_category::equivalent(const error_code& code, int condition) const noe return *this == code.category() && code.value() == condition; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/expected.cpp b/libcxx/src/expected.cpp index f30efb5..19542b1 100644 --- a/libcxx/src/expected.cpp +++ b/libcxx/src/expected.cpp @@ -9,5 +9,9 @@ #include <expected> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS + const char* bad_expected_access<void>::what() const noexcept { return "bad access to std::expected"; } + +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/experimental/chrono_exception.cpp b/libcxx/src/experimental/chrono_exception.cpp index bea2ad1..0d77f2a 100644 --- a/libcxx/src/experimental/chrono_exception.cpp +++ b/libcxx/src/experimental/chrono_exception.cpp @@ -9,6 +9,7 @@ #include <chrono> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS namespace chrono { @@ -19,4 +20,5 @@ _LIBCPP_EXPORTED_FROM_ABI ambiguous_local_time::~ambiguous_local_time() = defaul } // namespace chrono +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/filesystem/directory_entry.cpp b/libcxx/src/filesystem/directory_entry.cpp index 1527152..0c7f595 100644 --- a/libcxx/src/filesystem/directory_entry.cpp +++ b/libcxx/src/filesystem/directory_entry.cpp @@ -16,6 +16,7 @@ #include "time_utils.h" _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS error_code directory_entry::__do_refresh() noexcept { __data_.__reset(); @@ -70,4 +71,5 @@ error_code directory_entry::__do_refresh() noexcept { return failure_ec; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_FILESYSTEM diff --git a/libcxx/src/filesystem/directory_iterator.cpp b/libcxx/src/filesystem/directory_iterator.cpp index 7d00c49..5d682ae 100644 --- a/libcxx/src/filesystem/directory_iterator.cpp +++ b/libcxx/src/filesystem/directory_iterator.cpp @@ -26,6 +26,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS using detail::ErrorHandler; @@ -320,4 +321,5 @@ bool recursive_directory_iterator::__try_recursion(error_code* ec) { return false; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_FILESYSTEM diff --git a/libcxx/src/filesystem/filesystem_clock.cpp b/libcxx/src/filesystem/filesystem_clock.cpp index 49f65ef..c554f3c 100644 --- a/libcxx/src/filesystem/filesystem_clock.cpp +++ b/libcxx/src/filesystem/filesystem_clock.cpp @@ -42,6 +42,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_DIAGNOSTIC_PUSH _LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wdeprecated") @@ -76,4 +77,5 @@ _FilesystemClock::time_point _FilesystemClock::now() noexcept { #endif } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_FILESYSTEM diff --git a/libcxx/src/filesystem/filesystem_error.cpp b/libcxx/src/filesystem/filesystem_error.cpp index 0d8185fb..43752aa7 100644 --- a/libcxx/src/filesystem/filesystem_error.cpp +++ b/libcxx/src/filesystem/filesystem_error.cpp @@ -15,6 +15,7 @@ #include "format_string.h" _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS filesystem_error::~filesystem_error() {} @@ -37,4 +38,5 @@ void filesystem_error::__create_what(int __num_paths) { }(); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_FILESYSTEM diff --git a/libcxx/src/filesystem/operations.cpp b/libcxx/src/filesystem/operations.cpp index b71f94a..56fdf7e 100644 --- a/libcxx/src/filesystem/operations.cpp +++ b/libcxx/src/filesystem/operations.cpp @@ -76,6 +76,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS using detail::capture_errno; using detail::ErrorHandler; @@ -1084,4 +1085,5 @@ path __weakly_canonical(const path& p, error_code* ec) { return result.lexically_normal(); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_FILESYSTEM diff --git a/libcxx/src/filesystem/path.cpp b/libcxx/src/filesystem/path.cpp index 9f7dc54..2e13195 100644 --- a/libcxx/src/filesystem/path.cpp +++ b/libcxx/src/filesystem/path.cpp @@ -14,6 +14,7 @@ #include "path_parser.h" _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS using detail::ErrorHandler; using parser::createView; @@ -442,4 +443,5 @@ size_t __char_to_wide(const string& str, wchar_t* out, size_t outlen) { } #endif +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_FILESYSTEM diff --git a/libcxx/src/fstream.cpp b/libcxx/src/fstream.cpp index 55a4442..2975088 100644 --- a/libcxx/src/fstream.cpp +++ b/libcxx/src/fstream.cpp @@ -18,6 +18,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #if defined(_LIBCPP_WIN32API) @@ -34,4 +35,5 @@ _LIBCPP_EXPORTED_FROM_ABI void* __filebuf_windows_native_handle(FILE* __file) no #endif +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/functional.cpp b/libcxx/src/functional.cpp index 59dab16..737b6e0 100644 --- a/libcxx/src/functional.cpp +++ b/libcxx/src/functional.cpp @@ -9,6 +9,7 @@ #include <functional> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS bad_function_call::~bad_function_call() noexcept {} @@ -18,4 +19,5 @@ size_t __hash_memory(_LIBCPP_NOESCAPE const void* ptr, size_t size) noexcept { return __murmur2_or_cityhash<size_t>()(ptr, size); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/future.cpp b/libcxx/src/future.cpp index 7bba635..284b688 100644 --- a/libcxx/src/future.cpp +++ b/libcxx/src/future.cpp @@ -10,6 +10,7 @@ #include <string> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS class _LIBCPP_HIDDEN __future_error_category : public __do_message { public: @@ -194,4 +195,5 @@ shared_future<void>& shared_future<void>::operator=(const shared_future& __rhs) return *this; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/hash.cpp b/libcxx/src/hash.cpp index 41c4eb4..17a0c8b 100644 --- a/libcxx/src/hash.cpp +++ b/libcxx/src/hash.cpp @@ -14,6 +14,7 @@ _LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wtautological-constant-out-of-range-compare") _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS namespace { @@ -449,4 +450,5 @@ size_t __next_prime(size_t n) { } } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/ios.cpp b/libcxx/src/ios.cpp index 02ce484..9d80f8a 100644 --- a/libcxx/src/ios.cpp +++ b/libcxx/src/ios.cpp @@ -22,6 +22,7 @@ _LIBCPP_PUSH_MACROS #include <__undef_macros> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS class _LIBCPP_HIDDEN __iostream_category : public __do_message { public: @@ -382,6 +383,7 @@ bool ios_base::sync_with_stdio(bool sync) { return r; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD _LIBCPP_POP_MACROS diff --git a/libcxx/src/iostream.cpp b/libcxx/src/iostream.cpp index 4167252..28d50ee 100644 --- a/libcxx/src/iostream.cpp +++ b/libcxx/src/iostream.cpp @@ -15,6 +15,7 @@ #define ABI_NAMESPACE_STR _LIBCPP_TOSTRING(_LIBCPP_ABI_NAMESPACE) _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS template <class StreamT, class BufferT> union stream_data { @@ -135,4 +136,5 @@ ios_base::Init::Init() { ios_base::Init::~Init() {} +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/locale.cpp b/libcxx/src/locale.cpp index b3ec2895..d981d13 100644 --- a/libcxx/src/locale.cpp +++ b/libcxx/src/locale.cpp @@ -49,6 +49,7 @@ _LIBCPP_PUSH_MACROS #include <__undef_macros> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS struct __libcpp_unique_locale { __libcpp_unique_locale(const char* nm) : __loc_(__locale::__newlocale(_LIBCPP_ALL_MASK, nm, 0)) {} @@ -5727,6 +5728,7 @@ template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS codecvt_byname<char16_t, template class _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS codecvt_byname<char32_t, char8_t, mbstate_t>; #endif +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD _LIBCPP_POP_MACROS diff --git a/libcxx/src/memory.cpp b/libcxx/src/memory.cpp index 9be40cb..d6c109d 100644 --- a/libcxx/src/memory.cpp +++ b/libcxx/src/memory.cpp @@ -26,6 +26,7 @@ #include "include/atomic_support.h" _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS bad_weak_ptr::~bad_weak_ptr() noexcept {} @@ -147,4 +148,5 @@ void* align(size_t alignment, size_t size, void*& ptr, size_t& space) { return r; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/memory_resource.cpp b/libcxx/src/memory_resource.cpp index 22b5493..00307e1 100644 --- a/libcxx/src/memory_resource.cpp +++ b/libcxx/src/memory_resource.cpp @@ -20,6 +20,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS namespace pmr { @@ -497,4 +498,5 @@ void* monotonic_buffer_resource::do_allocate(size_t bytes, size_t align) { } // namespace pmr +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/mutex.cpp b/libcxx/src/mutex.cpp index 5b1e7da..303001a 100644 --- a/libcxx/src/mutex.cpp +++ b/libcxx/src/mutex.cpp @@ -23,6 +23,7 @@ _LIBCPP_PUSH_MACROS #include <__undef_macros> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS // ~mutex is defined elsewhere @@ -141,6 +142,7 @@ void recursive_timed_mutex::unlock() noexcept { } } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD _LIBCPP_POP_MACROS diff --git a/libcxx/src/mutex_destructor.cpp b/libcxx/src/mutex_destructor.cpp index 9f99172..4ba4ad1 100644 --- a/libcxx/src/mutex_destructor.cpp +++ b/libcxx/src/mutex_destructor.cpp @@ -24,6 +24,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #ifdef NEEDS_MUTEX_DESTRUCTOR class _LIBCPP_EXPORTED_FROM_ABI mutex { @@ -39,4 +40,5 @@ public: mutex::~mutex() noexcept { __libcpp_mutex_destroy(&__m_); } #endif // !NEEDS_MUTEX_DESTRUCTOR +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/optional.cpp b/libcxx/src/optional.cpp index 4e7e288..cbf29b6 100644 --- a/libcxx/src/optional.cpp +++ b/libcxx/src/optional.cpp @@ -22,6 +22,7 @@ const char* bad_optional_access::what() const noexcept { return "bad_optional_ac // Preserve std::experimental::bad_optional_access for ABI compatibility // Even though it no longer exists in a header file _LIBCPP_BEGIN_NAMESPACE_EXPERIMENTAL +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS class _LIBCPP_EXPORTED_FROM_ABI _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS bad_optional_access : public std::logic_error { public: @@ -33,4 +34,5 @@ public: bad_optional_access::~bad_optional_access() noexcept = default; +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_EXPERIMENTAL diff --git a/libcxx/src/ostream.cpp b/libcxx/src/ostream.cpp index e0f14a8..ae3afff 100644 --- a/libcxx/src/ostream.cpp +++ b/libcxx/src/ostream.cpp @@ -15,6 +15,7 @@ #include "std_stream.h" _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_EXPORTED_FROM_ABI FILE* __get_ostream_file(ostream& __os) { // dynamic_cast requires RTTI, this only affects users whose vendor builds @@ -38,4 +39,5 @@ _LIBCPP_EXPORTED_FROM_ABI FILE* __get_ostream_file(ostream& __os) { return nullptr; } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/print.cpp b/libcxx/src/print.cpp index 3f2baa6..d03d8d9 100644 --- a/libcxx/src/print.cpp +++ b/libcxx/src/print.cpp @@ -25,6 +25,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #if defined(_LIBCPP_WIN32API) @@ -61,4 +62,5 @@ __write_to_windows_console([[maybe_unused]] FILE* __stream, [[maybe_unused]] wst _LIBCPP_EXPORTED_FROM_ABI bool __is_posix_terminal(FILE* __stream) { return isatty(fileno(__stream)); } #endif +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/random.cpp b/libcxx/src/random.cpp index 5c66448..9e98b0f 100644 --- a/libcxx/src/random.cpp +++ b/libcxx/src/random.cpp @@ -38,6 +38,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #if defined(_LIBCPP_USING_GETENTROPY) @@ -179,4 +180,5 @@ double random_device::entropy() const noexcept { #endif } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/random_shuffle.cpp b/libcxx/src/random_shuffle.cpp index 4f2669a..aa0f78f 100644 --- a/libcxx/src/random_shuffle.cpp +++ b/libcxx/src/random_shuffle.cpp @@ -17,6 +17,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #if _LIBCPP_HAS_THREADS static constinit __libcpp_mutex_t __rs_mut = _LIBCPP_MUTEX_INITIALIZER; @@ -48,4 +49,5 @@ __rs_default::result_type __rs_default::operator()() { __rs_default __rs_get() { return __rs_default(); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/regex.cpp b/libcxx/src/regex.cpp index 6d9f06e..9d7d169 100644 --- a/libcxx/src/regex.cpp +++ b/libcxx/src/regex.cpp @@ -11,6 +11,7 @@ #include <regex> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS static const char* make_error_type_string(regex_constants::error_type ecode) { switch (ecode) { @@ -396,4 +397,5 @@ void __match_any_but_newline<wchar_t>::__exec(__state& __s) const { } } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/shared_mutex.cpp b/libcxx/src/shared_mutex.cpp index 6180833..4c5e45f 100644 --- a/libcxx/src/shared_mutex.cpp +++ b/libcxx/src/shared_mutex.cpp @@ -13,6 +13,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS // Shared Mutex Base __shared_mutex_base::__shared_mutex_base() : __state_(0) {} @@ -96,4 +97,5 @@ void shared_timed_mutex::lock_shared() { return __base_.lock_shared(); } bool shared_timed_mutex::try_lock_shared() { return __base_.try_lock_shared(); } void shared_timed_mutex::unlock_shared() { return __base_.unlock_shared(); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/std_stream.h b/libcxx/src/std_stream.h index 772e8b9..4b9d3a3 100644 --- a/libcxx/src/std_stream.h +++ b/libcxx/src/std_stream.h @@ -24,6 +24,7 @@ _LIBCPP_PUSH_MACROS #include <__undef_macros> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS static const int __limit = 8; @@ -380,6 +381,7 @@ void __stdoutbuf<_CharT>::imbue(const locale& __loc) { __always_noconv_ = __cv_->always_noconv(); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD _LIBCPP_POP_MACROS diff --git a/libcxx/src/stdexcept.cpp b/libcxx/src/stdexcept.cpp index 0ee438b..31f60d5 100644 --- a/libcxx/src/stdexcept.cpp +++ b/libcxx/src/stdexcept.cpp @@ -18,6 +18,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS void __throw_runtime_error(const char* msg) { #if _LIBCPP_HAS_EXCEPTIONS @@ -27,4 +28,5 @@ void __throw_runtime_error(const char* msg) { #endif } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/string.cpp b/libcxx/src/string.cpp index 55d19a6..dc35b42 100644 --- a/libcxx/src/string.cpp +++ b/libcxx/src/string.cpp @@ -19,6 +19,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #ifndef _LIBCPP_ABI_DO_NOT_EXPORT_BASIC_STRING_COMMON @@ -382,4 +383,5 @@ wstring to_wstring(double val) { return as_string(get_swprintf(), initial_string wstring to_wstring(long double val) { return as_string(get_swprintf(), initial_string<wstring>()(), L"%Lf", val); } #endif +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/strstream.cpp b/libcxx/src/strstream.cpp index 7037419..667740f 100644 --- a/libcxx/src/strstream.cpp +++ b/libcxx/src/strstream.cpp @@ -18,6 +18,7 @@ _LIBCPP_PUSH_MACROS #include <__undef_macros> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS strstreambuf::strstreambuf(streamsize __alsize) : __strmode_(__dynamic), __alsize_(__alsize), __palloc_(nullptr), __pfree_(nullptr) {} @@ -253,6 +254,7 @@ ostrstream::~ostrstream() {} strstream::~strstream() {} +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD _LIBCPP_POP_MACROS diff --git a/libcxx/src/system_error.cpp b/libcxx/src/system_error.cpp index 164fb72..4c24257 100644 --- a/libcxx/src/system_error.cpp +++ b/libcxx/src/system_error.cpp @@ -27,6 +27,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #if defined(_LIBCPP_WIN32API) @@ -366,4 +367,5 @@ void __throw_system_error(int ev, const char* what_arg) { #endif } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/thread.cpp b/libcxx/src/thread.cpp index 028d36e..b1c5cdc 100644 --- a/libcxx/src/thread.cpp +++ b/libcxx/src/thread.cpp @@ -33,6 +33,7 @@ #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS thread::~thread() { if (!__libcpp_thread_isnull(&__t_)) @@ -172,4 +173,5 @@ void __thread_struct::notify_all_at_thread_exit(condition_variable* cv, mutex* m void __thread_struct::__make_ready_at_thread_exit(__assoc_sub_state* __s) { __p_->__make_ready_at_thread_exit(__s); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/valarray.cpp b/libcxx/src/valarray.cpp index 6ef1f1c..8715650 100644 --- a/libcxx/src/valarray.cpp +++ b/libcxx/src/valarray.cpp @@ -9,6 +9,7 @@ #include <valarray> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS // These two symbols are part of the v1 ABI but not part of the >=v2 ABI. #if _LIBCPP_ABI_VERSION == 1 @@ -46,4 +47,5 @@ void gslice::__init(size_t __start) { } } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/vector.cpp b/libcxx/src/vector.cpp index 3f3a906..874badd 100644 --- a/libcxx/src/vector.cpp +++ b/libcxx/src/vector.cpp @@ -9,6 +9,7 @@ #include <vector> _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS #ifndef _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON @@ -27,4 +28,5 @@ void __vector_base_common<true>::__throw_out_of_range() const { std::__throw_out #endif // _LIBCPP_ABI_DO_NOT_EXPORT_VECTOR_BASE_COMMON +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD diff --git a/libcxx/src/verbose_abort.cpp b/libcxx/src/verbose_abort.cpp index 94bdb45..5df0be7 100644 --- a/libcxx/src/verbose_abort.cpp +++ b/libcxx/src/verbose_abort.cpp @@ -22,6 +22,7 @@ extern "C" void android_set_abort_message(const char* msg); #endif _LIBCPP_BEGIN_NAMESPACE_STD +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_WEAK void __libcpp_verbose_abort(char const* format, ...) noexcept { // Write message to stderr. We do this before formatting into a @@ -62,4 +63,5 @@ _LIBCPP_WEAK void __libcpp_verbose_abort(char const* format, ...) noexcept { std::abort(); } +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS _LIBCPP_END_NAMESPACE_STD |