For XCOFF (AIX) linkers, we have a fatal error if we see a weak hidden ref of a symbol in user code with a local weak def and then a strong def
in the library, as the default weak resolution semantics don't favour weak local defs for XCOFF leading to a conflict.
std::bad_function_call has just such a problem in ABI version 1, as it only leaves out the user code definition if _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION is defined in ABI version 2 and above. To fix this, we opt-in to _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION on all ABI versions for AIX in this patch.
Please clang-format this. See:
https://buildkite.com/llvm-project/libcxx-ci/builds/18490#0186136d-9db4-4162-84b3-3ea430f44654