@@ -158,7 +158,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{
template <class _Up>
using _DeleterConstraint =
- typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint;
+ typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
__uniq_ptr_impl<_Tp, _Dp> _M_t;
@@ -184,7 +184,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// Default constructor, creates a unique_ptr that owns nothing.
template <typename _Up = _Dp,
- typename = typename _DeleterConstraint<_Up>::type>
+ typename = _DeleterConstraint<_Up>>
constexpr unique_ptr() noexcept
: _M_t()
{ }
@@ -196,7 +196,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* The deleter will be value-initialized.
*/
template <typename _Up = _Dp,
- typename = typename _DeleterConstraint<_Up>::type>
+ typename = _DeleterConstraint<_Up>>
explicit
unique_ptr(pointer __p) noexcept
: _M_t(__p)
@@ -229,7 +229,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// Creates a unique_ptr that owns nothing.
template <typename _Up = _Dp,
- typename = typename _DeleterConstraint<_Up>::type>
+ typename = _DeleterConstraint<_Up>>
constexpr unique_ptr(nullptr_t) noexcept : unique_ptr() { }
// Move constructors.
@@ -398,7 +398,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{
template <typename _Up>
using _DeleterConstraint =
- typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint;
+ typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
__uniq_ptr_impl<_Tp, _Dp> _M_t;
@@ -449,7 +449,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// Default constructor, creates a unique_ptr that owns nothing.
template <typename _Up = _Dp,
- typename = typename _DeleterConstraint<_Up>::type>
+ typename = _DeleterConstraint<_Up>>
constexpr unique_ptr() noexcept
: _M_t()
{ }
@@ -463,7 +463,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*/
template<typename _Up,
typename _Vp = _Dp,
- typename = typename _DeleterConstraint<_Vp>::type,
+ typename = _DeleterConstraint<_Vp>,
typename = typename enable_if<
__safe_conversion_raw<_Up>::value, bool>::type>
explicit
@@ -510,7 +510,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// Creates a unique_ptr that owns nothing.
template <typename _Up = _Dp,
- typename = typename _DeleterConstraint<_Up>::type>
+ typename = _DeleterConstraint<_Up>>
constexpr unique_ptr(nullptr_t) noexcept : unique_ptr() { }
template<typename _Up, typename _Ep,
@@ -23,13 +23,6 @@
using std::unique_ptr;
-// { dg-error "no type" "" { target *-*-* } 187 }
-// { dg-error "no type" "" { target *-*-* } 199 }
-// { dg-error "no type" "" { target *-*-* } 232 }
-// { dg-error "no type" "" { target *-*-* } 452 }
-// { dg-error "no type" "" { target *-*-* } 466 }
-// { dg-error "no type" "" { target *-*-* } 513 }
-
void
test01()
{