From dc3a00d239b45372411049b37806eaaf348bdbe9 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 19 May 2025 20:36:53 +0200 Subject: [PATCH] [libc++] Add explicit ABI annotations to functions from the block runtime declared in <__functional/function.h> --- libcxx/include/__functional/function.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libcxx/include/__functional/function.h b/libcxx/include/__functional/function.h index 5264af30d60d9..d9f857ae24cef 100644 --- a/libcxx/include/__functional/function.h +++ b/libcxx/include/__functional/function.h @@ -752,8 +752,9 @@ class __policy_func<_Rp(_ArgTypes...)> { # if _LIBCPP_HAS_BLOCKS_RUNTIME -extern "C" void* _Block_copy(const void*); -extern "C" void _Block_release(const void*); +_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS +_LIBCPP_EXPORTED_FROM_ABI extern "C" void* _Block_copy(const void*); +_LIBCPP_EXPORTED_FROM_ABI extern "C" void _Block_release(const void*); template class __func<_Rp1 (^)(_ArgTypes1...), _Alloc, _Rp(_ArgTypes...)> : public __base<_Rp(_ArgTypes...)> { @@ -826,6 +827,7 @@ class __func<_Rp1 (^)(_ArgTypes1...), _Alloc, _Rp(_ArgTypes...)> : public __base } # endif // _LIBCPP_HAS_RTTI }; +_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS # endif // _LIBCPP_HAS_EXTENSION_BLOCKS