]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
unique_ptr.h: Remove private __this_type typedef.
authorBenjamin Kosnik <bkoz@gcc.gnu.org>
Thu, 5 Feb 2009 01:50:18 +0000 (01:50 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Thu, 5 Feb 2009 01:50:18 +0000 (01:50 +0000)
2009-02-04  Benjamin Kosnik  <bkoz@redhat.com>

* include/bits/unique_ptr.h: Remove private __this_type typedef.
* include/bits/stl_vector.h: Remove private vector_type typedef.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Fix line numbers.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.

From-SVN: r143949

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/bits/unique_ptr.h
libstdc++-v3/testsuite/20_util/unique_ptr/assign/assign.cc
libstdc++-v3/testsuite/20_util/unique_ptr/modifiers/reset_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc

index b5d4d055dac92d484feb7e80beace77160161a2e..b1340c4ecb4e5444fea92c89f9dd078679ed0a64 100644 (file)
@@ -1,6 +1,20 @@
+2009-02-04  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * include/bits/unique_ptr.h: Remove private __this_type typedef.
+       * include/bits/stl_vector.h: Remove private vector_type typedef.
+       * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
+       Fix line numbers.
+       * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
+       * testsuite/23_containers/vector/requirements/dr438/
+       constructor_1_neg.cc: Same.
+       * testsuite/23_containers/vector/requirements/dr438/
+       constructor_2_neg.cc: Same.
+       * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
+       * testsuite/20_util/unique_ptr/assign/assign.cc: Same.
+
 2009-02-03  Paolo Carlini  <paolo.carlini@oracle.com>
 
-       PR libstdc++/25191      
+       PR libstdc++/25191
        * libsupc++/exception_defines.h: Depending on __EXCEPTIONS,
        deal consistently with __try and __catch too.
        * src/localename.cc: Replace try -> __try, catch -> __catch.
index e6a42c6835c7daf20f6a6e80d6da1a200bc118bb..e62aa7260577f41eddbede5f2829c7fffc64c8de 100644 (file)
@@ -181,7 +181,6 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
       __glibcxx_class_requires2(_Tp, _Alloc_value_type, _SameTypeConcept)
       
       typedef _Vector_base<_Tp, _Alloc>                         _Base;
-      typedef vector<_Tp, _Alloc>                       vector_type;
       typedef typename _Base::_Tp_alloc_type            _Tp_alloc_type;
 
     public:
@@ -190,8 +189,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
       typedef typename _Tp_alloc_type::const_pointer     const_pointer;
       typedef typename _Tp_alloc_type::reference         reference;
       typedef typename _Tp_alloc_type::const_reference   const_reference;
-      typedef __gnu_cxx::__normal_iterator<pointer, vector_type> iterator;
-      typedef __gnu_cxx::__normal_iterator<const_pointer, vector_type>
+      typedef __gnu_cxx::__normal_iterator<pointer, vector> iterator;
+      typedef __gnu_cxx::__normal_iterator<const_pointer, vector>
       const_iterator;
       typedef std::reverse_iterator<const_iterator>  const_reverse_iterator;
       typedef std::reverse_iterator<iterator>           reverse_iterator;
index 3123a79ccaecf4e6ea587105cfd132293dea7bc0..5e4fa8c71399d7f113c32d95a4ef334949697018 100644 (file)
@@ -1,6 +1,6 @@
 // unique_ptr implementation -*- C++ -*-
 
-// Copyright (C) 2008 Free Software Foundation, Inc.
+// Copyright (C) 2008, 2009 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -80,21 +80,20 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       }
     };
 
-  /// 20.6.11.2 unique_ptr for single objects.
+  /// 20.7.12.2 unique_ptr for single objects.
   template <typename _Tp, typename _Tp_Deleter = default_delete<_Tp> > 
     class unique_ptr
     {
-      typedef unique_ptr<_Tp, _Tp_Deleter>   __this_type;
       typedef std::tuple<_Tp*, _Tp_Deleter>  __tuple_type;
-      typedef __tuple_type __this_type::*    __unspecified_bool_type;
-      typedef _Tp* __this_type::*            __unspecified_pointer_type;
+      typedef __tuple_type unique_ptr::*     __unspecified_bool_type;
+      typedef _Tp* unique_ptr::*             __unspecified_pointer_type;
 
     public:
-      typedef _Tp*                    pointer;
+      typedef _Tp*               pointer;
       typedef _Tp                element_type;      
       typedef _Tp_Deleter        deleter_type;
 
-      // constructors
+      // Constructors.
       unique_ptr()
       : _M_t(pointer(), deleter_type())
       { static_assert(!std::is_pointer<deleter_type>::value,
@@ -117,8 +116,8 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { static_assert(!std::is_reference<deleter_type>::value, 
                      "rvalue deleter bound to reference"); }
 
-      // move constructors
-      unique_ptr(unique_ptr && __u) 
+      // Move constructors.
+      unique_ptr(unique_ptr&& __u) 
       : _M_t(__u.release(), std::forward<deleter_type>(__u.get_deleter())) { }
 
       template<typename _Up, typename _Up_Deleter> 
@@ -126,10 +125,10 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
         : _M_t(__u.release(), std::forward<deleter_type>(__u.get_deleter()))
        { }
 
-      // destructor
+      // Destructor.
       ~unique_ptr() { reset(); }
     
-      // assignment
+      // Assignment.
       unique_ptr&
       operator=(unique_ptr&& __u)
       { 
@@ -154,7 +153,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        return *this;
       }
 
-      // observers
+      // Observers.
       typename std::add_lvalue_reference<element_type>::type operator*() const
       {
        _GLIBCXX_DEBUG_ASSERT(get() != 0);
@@ -183,9 +182,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { return std::get<1>(_M_t); }
 
       operator __unspecified_bool_type () const
-      { return get() == 0 ? 0 : &__this_type::_M_t; }
+      { return get() == 0 ? 0 : &unique_ptr::_M_t; }
 
-      // modifiers
+      // Modifiers.
       pointer
       release() 
       {
@@ -211,7 +210,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        swap(_M_t, __u._M_t);
       }
 
-      // disable copy from lvalue
+      // Disable copy from lvalue.
       unique_ptr(const unique_ptr&) = delete;
 
       template<typename _Up, typename _Up_Deleter> 
@@ -226,24 +225,23 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       __tuple_type _M_t;
   };
  
-  /// 20.6.11.3 unique_ptr for array objects with a runtime length
+  /// 20.7.12.3 unique_ptr for array objects with a runtime length
   // [unique.ptr.runtime]
   // _GLIBCXX_RESOLVE_LIB_DEFECTS
   // DR 740 - omit specialization for array objects with a compile time length
   template<typename _Tp, typename _Tp_Deleter> 
     class unique_ptr<_Tp[], _Tp_Deleter>
     {
-      typedef unique_ptr<_Tp[], _Tp_Deleter>  __this_type;
-      typedef std::tuple<_Tp*, _Tp_Deleter>   __tuple_type;
-      typedef __tuple_type __this_type::*     __unspecified_bool_type;
-      typedef _Tp* __this_type::*             __unspecified_pointer_type;
+      typedef std::tuple<_Tp*, _Tp_Deleter>  __tuple_type;
+      typedef __tuple_type unique_ptr::*     __unspecified_bool_type;
+      typedef _Tp* unique_ptr::*             __unspecified_pointer_type;
 
     public:
-      typedef _Tp*                    pointer;
+      typedef _Tp*               pointer;
       typedef _Tp                element_type;      
       typedef _Tp_Deleter        deleter_type;
 
-      // constructors
+      // Constructors.
       unique_ptr()
       : _M_t(pointer(), deleter_type())
       { static_assert(!std::is_pointer<deleter_type>::value,
@@ -266,7 +264,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { static_assert(!std::is_reference<deleter_type>::value, 
                      "rvalue deleter bound to reference"); }
 
-      // move constructors
+      // Move constructors.
       unique_ptr(unique_ptr&& __u) 
       : _M_t(__u.release(), std::forward<deleter_type>(__u.get_deleter())) { }
 
@@ -275,10 +273,10 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        : _M_t(__u.release(), std::forward<deleter_type>(__u.get_deleter()))
        { }
 
-      // destructor
+      // Destructor.
       ~unique_ptr() { reset(); }
 
-      // assignment
+      // Assignment.
       unique_ptr&
       operator=(unique_ptr&& __u)
       {
@@ -303,7 +301,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        return *this;
       }
 
-      // observers
+      // Observers.
       typename std::add_lvalue_reference<element_type>::type 
       operator[](size_t __i) const 
       {
@@ -326,9 +324,9 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
       { return std::get<1>(_M_t); }    
 
       operator __unspecified_bool_type () const 
-      { return get() == 0 ? 0 : &__this_type::_M_t; }
+      { return get() == 0 ? 0 : &unique_ptr::_M_t; }
     
-      // modifiers
+      // Modifiers.
       pointer
       release() 
       {
@@ -358,11 +356,11 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
        swap(_M_t, __u._M_t);
       }
 
-      // disable copy from lvalue
+      // Disable copy from lvalue.
       unique_ptr(const unique_ptr&) = delete;
       unique_ptr& operator=(const unique_ptr&) = delete;
 
-      // disable construction from convertible pointer types
+      // Disable construction from convertible pointer types.
       // (N2315 - 20.6.5.3.1)
       template<typename _Up>
         unique_ptr(_Up*, typename
index 3ccc8701a0cdfbddfa53240b04266f69c25baeb2..457312ea5269acb256b074265559b789350dcbb2 100644 (file)
@@ -1,7 +1,7 @@
 // { dg-do compile }
 // { dg-options "-std=gnu++0x" }
 
-// Copyright (C) 2008 Free Software Foundation
+// Copyright (C) 2008, 2009 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -53,7 +53,7 @@ test03()
 // { dg-error "used here" "" { target *-*-* } 43 }
 // { dg-error "no matching" "" { target *-*-* } 49 }
 // { dg-error "used here" "" { target *-*-* } 50 }
-// { dg-error "candidates are" "" { target *-*-* } 215 }
-// { dg-error "deleted function" "" { target *-*-* } 215 }
-// { dg-error "deleted function" "" { target *-*-* } 362 }
+// { dg-error "candidates are" "" { target *-*-* } 214 }
+// { dg-error "deleted function" "" { target *-*-* } 214 }
+// { dg-error "deleted function" "" { target *-*-* } 360 }
 // { dg-excess-errors "note" }
index 37fcb6c9ed93439906d5d2cc91dbda42ec0da3c6..acff01ba26055931e13353de67170895165e57d1 100644 (file)
@@ -1,7 +1,7 @@
 // { dg-do compile }
 // { dg-options "-std=gnu++0x" }
 
-// Copyright (C) 2008 Free Software Foundation
+// Copyright (C) 2008, 2009 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -37,4 +37,4 @@ void test01()
 }
 
 // { dg-error "used here" "" { target *-*-* } 36 } 
-// { dg-error "deleted function" "" { target *-*-* } 352 }
+// { dg-error "deleted function" "" { target *-*-* } 350 }
index c5e445fa6db4bacdb60bca21051ea1913a92ad91..1f991cc938f474279d35344231691cd00e55310a 100644 (file)
@@ -1,6 +1,6 @@
 // 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
 
-// Copyright (C) 2007, 2008 Free Software Foundation
+// Copyright (C) 2007, 2008, 2009 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
 // USA.
 
 // { dg-do compile }
-// { dg-error "no matching" "" { target *-*-* } 1058 }
+// { dg-error "no matching" "" { target *-*-* } 1057 }
 // { dg-excess-errors "" }
 
 #include <vector>
index dd115afd520fd0bdf50d1e1213ca73c57b900c3c..ff4021e12c107268c052548d128d29002eb94264 100644 (file)
@@ -1,6 +1,6 @@
 // 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
 
-// Copyright (C) 2007, 2008 Free Software Foundation
+// Copyright (C) 2007, 2008, 2009 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
 // USA.
 
 // { dg-do compile }
-// { dg-error "no matching" "" { target *-*-* } 998 }
+// { dg-error "no matching" "" { target *-*-* } 997 }
 // { dg-excess-errors "" }
 
 #include <vector>
index 50e51cb8f3f4391256814dbf5a8dbce0f6d07926..e1f53211e6ee8592169a22cc31d1a4810326a233 100644 (file)
@@ -1,6 +1,6 @@
 // 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
 
-// Copyright (C) 2007, 2008 Free Software Foundation
+// Copyright (C) 2007, 2008, 2009 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
 // USA.
 
 // { dg-do compile }
-// { dg-error "no matching" "" { target *-*-* } 998 }
+// { dg-error "no matching" "" { target *-*-* } 997 }
 // { dg-excess-errors "" }
 
 #include <vector>
index 31642d75c5dc42d04d1e135d032ca7c1f14576bf..2c6169f1188a11d2d2f58988f92547a4ece8cbf0 100644 (file)
@@ -1,6 +1,6 @@
 // 2007-04-27  Paolo Carlini  <pcarlini@suse.de>
 
-// Copyright (C) 2007, 2008 Free Software Foundation
+// Copyright (C) 2007, 2008, 2009 Free Software Foundation
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -19,7 +19,7 @@
 // USA.
 
 // { dg-do compile }
-// { dg-error "no matching" "" { target *-*-* } 1099 }
+// { dg-error "no matching" "" { target *-*-* } 1098 }
 // { dg-excess-errors "" }
 
 #include <vector>