From: Jonathan Wakely Date: Wed, 4 Jul 2018 13:59:28 +0000 (+0100) Subject: Add another workaround to std::variant for Clang bug 31852 X-Git-Tag: releases/gcc-7.4.0~281 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=576e157ac7b6c79cab51126b9e9a7df57dbdaa4f;p=thirdparty%2Fgcc.git Add another workaround to std::variant for Clang bug 31852 Backport from mainline 2018-04-05 Jonathan Wakely * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify __get calls to avoid ADL and avoid ambiguity due to Clang bug. From-SVN: r262408 --- diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index e0f4d61e33bf..657965c40391 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,11 @@ 2018-07-04 Jonathan Wakely + Backport from mainline + 2018-04-05 Jonathan Wakely + + * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify + __get calls to avoid ADL and avoid ambiguity due to Clang bug. + Backport from mainline 2018-03-26 Jonathan Wakely diff --git a/libstdc++-v3/include/std/variant b/libstdc++-v3/include/std/variant index 6762a7bb250b..4b70dc04d112 100644 --- a/libstdc++-v3/include/std/variant +++ b/libstdc++-v3/include/std/variant @@ -278,8 +278,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION constexpr bool \ __erased_##__NAME(const _Variant& __lhs, const _Variant& __rhs) \ { \ - return __get<_Np>(std::forward<_Variant>(__lhs)) \ - __OP __get<_Np>(std::forward<_Variant>(__rhs)); \ + return __variant::__get<_Np>(std::forward<_Variant>(__lhs)) \ + __OP __variant::__get<_Np>(std::forward<_Variant>(__rhs)); \ } _VARIANT_RELATION_FUNCTION_TEMPLATE(<, less)