Closed gjasny closed 3 years ago
Availability for watchOS and tvOS (libc++ config.h):
# define _LIBCPP_AVAILABILITY_UNCAUGHT_EXCEPTIONS \
__attribute__((availability(macosx,strict,introduced=10.12))) \
__attribute__((availability(ios,strict,introduced=10.0))) \
__attribute__((availability(tvos,strict,introduced=10.0))) \
__attribute__((availability(watchos,strict,introduced=3.0)))
We are using __cpp_lib_uncaught_exceptions
to detect availability of std::uncaught_exceptions
. Do I understand correctly that the library defines the macro but does not actually provide the function? If so, please, report the bug to libc++ developers.
Hello,
due to backward compatibility reasons we build boost with
-mmacosx-version-min=10.8
. This results in a compilation error inboost/core/uncaught_exceptions.hpp
due to unavailability of the API in older macOS versions despitelibc++
announces support. Locally I applied the following patch to fix compilation:But I guess Boost already provides a more elegant way to check for availability like a
Boost.Config Feature Check
.Thanks, Gregor