[libcxx-commits] [PATCH] D142842: [libc++] Remove _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION
Nikolas Klauser via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Feb 21 07:54:25 PST 2023
philnik added inline comments.
================
Comment at: libcxx/include/__functional/function.h:53
public:
-// Note that when a key function is not used, every translation unit that uses
-// bad_function_call will end up containing a weak definition of the vtable and
-// typeinfo.
-#ifdef _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION
- ~bad_function_call() _NOEXCEPT override;
-#else
- ~bad_function_call() _NOEXCEPT override {}
-#endif
+ ~bad_function_call() _NOEXCEPT override = default;
----------------
Mordante wrote:
> Why is this still needed?
It's not.
================
Comment at: libcxx/src/functional.cpp:27
_LIBCPP_END_NAMESPACE_STD
----------------
ldionne wrote:
> You will need to grep for `Address Sanitizer doesn't instrument weak symbols on Linux.` and adjust the `UNSUPPORTED` there. It should become something like `UNSUPPORTED: asan && libcpp-abi-version=2`.
IIUC this shouldn't be a problem anymore, since we don't have any weak symbols in ABIv2, and have only weak symbols in ABIv1 again.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D142842/new/
https://reviews.llvm.org/D142842
More information about the libcxx-commits
mailing list