зеркало из https://github.com/microsoft/STL.git
Remove workarounds for VSO-895622 (#410)
This bug is triggered when unqualified name lookup for `f` in `f(x)` finds only deleted function (template)s at template definition time, resulting in MSVC refusing to perform argument dependent lookup at template instantiation time. Unsurprisingly, all of the C++20 CPOs required workarounds.
This commit is contained in:
Родитель
a83d8c0061
Коммит
8dc0385763
|
@ -131,10 +131,6 @@ concept _Has_class_or_enum_type = __is_class(remove_reference_t<_Ty>) || __is_en
|
|||
// CUSTOMIZATION POINT OBJECT ranges::swap
|
||||
namespace ranges {
|
||||
namespace _Swap {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void swap();
|
||||
#endif // TRANSITION
|
||||
|
||||
template <class _Ty>
|
||||
void swap(_Ty&, _Ty&) = delete;
|
||||
|
||||
|
|
|
@ -834,10 +834,6 @@ concept indirectly_movable_storable = indirectly_movable<_In, _Out> && writable<
|
|||
// CUSTOMIZATION POINT OBJECT iter_swap
|
||||
namespace ranges {
|
||||
namespace _Iter_swap {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void iter_swap();
|
||||
#endif // TRANSITION, VSO-895622
|
||||
|
||||
template <class _Ty1, class _Ty2>
|
||||
void iter_swap(_Ty1, _Ty2) = delete;
|
||||
|
||||
|
@ -2012,10 +2008,6 @@ namespace ranges {
|
|||
|
||||
// CUSTOMIZATION POINT OBJECT ranges::begin
|
||||
namespace _Begin {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void begin();
|
||||
#endif // TRANSITION, VSO-895622
|
||||
|
||||
template <class _Ty>
|
||||
void begin(_Ty&&) = delete;
|
||||
template <class _Ty>
|
||||
|
@ -2078,10 +2070,6 @@ namespace ranges {
|
|||
|
||||
// CUSTOMIZATION POINT OBJECT ranges::end
|
||||
namespace _End {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void end();
|
||||
#endif // TRANSITION, VSO-895622
|
||||
|
||||
template <class _Ty>
|
||||
void end(_Ty&&) = delete;
|
||||
template <class _Ty>
|
||||
|
@ -2213,10 +2201,6 @@ namespace ranges {
|
|||
|
||||
// CUSTOMIZATION POINT OBJECT ranges::rbegin
|
||||
namespace _Rbegin {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void rbegin();
|
||||
#endif // TRANSITION, VSO-895622
|
||||
|
||||
template <class _Ty>
|
||||
void rbegin(_Ty&&) = delete;
|
||||
template <class _Ty>
|
||||
|
@ -2286,10 +2270,6 @@ namespace ranges {
|
|||
|
||||
// CUSTOMIZATION POINT OBJECT ranges::rend
|
||||
namespace _Rend {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void rend();
|
||||
#endif // TRANSITION, VSO-895622
|
||||
|
||||
template <class _Ty>
|
||||
void rend(_Ty&&) = delete;
|
||||
template <class _Ty>
|
||||
|
@ -2395,10 +2375,6 @@ namespace ranges {
|
|||
|
||||
// CUSTOMIZATION POINT OBJECT ranges::size
|
||||
namespace _Size {
|
||||
#ifndef __clang__ // TRANSITION, VSO-895622
|
||||
void size();
|
||||
#endif // TRANSITION, VSO-895622
|
||||
|
||||
template <class _Ty>
|
||||
void size(_Ty&&) = delete;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче