forked from boostorg/container
Rewrite CTAD and SFINAE-out overloads as the standard requires
This commit is contained in:
@@ -61,15 +61,15 @@ struct X;
|
||||
template<typename T>
|
||||
struct XRef
|
||||
{
|
||||
explicit XRef(T* ptr) noexcept : ptr(ptr) {}
|
||||
operator T*() const noexcept { return ptr; }
|
||||
explicit XRef(T* ptr) : ptr(ptr) {}
|
||||
operator T*() const { return ptr; }
|
||||
T* ptr;
|
||||
};
|
||||
|
||||
struct X
|
||||
{
|
||||
XRef<X const> operator&() const noexcept { return XRef<X const>(this); }
|
||||
XRef<X> operator&() noexcept { return XRef<X>(this); }
|
||||
XRef<X const> operator&() const { return XRef<X const>(this); }
|
||||
XRef<X> operator&() { return XRef<X>(this); }
|
||||
};
|
||||
|
||||
|
||||
@@ -260,7 +260,7 @@ int main()
|
||||
}
|
||||
}
|
||||
|
||||
#if __cplusplus >= 201703L
|
||||
#ifndef BOOST_CONTAINER_NO_CXX17_CTAD
|
||||
////////////////////////////////////
|
||||
// Constructor Template Auto Deduction testing
|
||||
////////////////////////////////////
|
||||
|
||||
Reference in New Issue
Block a user