Author: Arthur O'Dwyer Date: 2020-12-08T17:05:38-05:00 New Revision: 35c3b539438be2d587cbe8f2b9604a68bbe7792b
URL: https://github.com/llvm/llvm-project/commit/35c3b539438be2d587cbe8f2b9604a68bbe7792b DIFF: https://github.com/llvm/llvm-project/commit/35c3b539438be2d587cbe8f2b9604a68bbe7792b.diff LOG: [libc++] ADL-proof __libcpp_is_nothrow_constructible. The GCC C++20 buildbot hit this ADL call; Clang doesn't, presumably because it uses a compiler builtin instead of this codepath in <type_traits>. https://buildkite.com/llvm-project/libcxx-ci/builds/674 Added: Modified: libcxx/include/type_traits Removed: ################################################################################ diff --git a/libcxx/include/type_traits b/libcxx/include/type_traits index cd6a1633df80..2842c905e302 100644 --- a/libcxx/include/type_traits +++ b/libcxx/include/type_traits @@ -1821,7 +1821,7 @@ template <typename _Tp> static void __test_noexcept(_Tp) noexcept; template<typename _Fm, typename _To> -static bool_constant<noexcept(__test_noexcept<_To>(declval<_Fm>()))> +static bool_constant<noexcept(_VSTD::__test_noexcept<_To>(declval<_Fm>()))> __is_nothrow_convertible_test(); template <typename _Fm, typename _To> @@ -3293,7 +3293,7 @@ void __implicit_conversion_to(_Tp) noexcept { } template <class _Tp, class _Arg> struct __libcpp_is_nothrow_constructible</*is constructible*/true, /*is reference*/true, _Tp, _Arg> - : public integral_constant<bool, noexcept(__implicit_conversion_to<_Tp>(declval<_Arg>()))> + : public integral_constant<bool, noexcept(_VSTD::__implicit_conversion_to<_Tp>(declval<_Arg>()))> { }; _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits