Patchwork [v3] Implement GB 87

login
register
mail settings
Submitter Paolo Carlini
Date Aug. 6, 2010, 11:30 a.m.
Message ID <4C5BF243.2070103@oracle.com>
Download mbox | patch
Permalink /patch/61104/
State New
Headers show

Comments

Paolo Carlini - Aug. 6, 2010, 11:30 a.m.
Hi,

similarly to std::pair. Committed to mainline.

Paolo.

///////////////
2010-08-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/tuple (begin, end): Remove per GB 87.
	* testsuite/20_util/tuple/range_access.cc: Remove.

Patch

Index: include/std/tuple
===================================================================
--- include/std/tuple	(revision 162940)
+++ include/std/tuple	(working copy)
@@ -697,24 +697,6 @@ 
   const _Swallow_assign ignore{};
 
   /**
-   *  @brief  Return the first of a tuple containing two input iterators.
-   *  @param  tpl  Tuple.
-   */
-  template<class _InputIterator>
-    inline _InputIterator
-    begin(const tuple<_InputIterator, _InputIterator>& __tpl)
-    { return get<0>(__tpl); }
-
-  /**
-   *  @brief  Return the second of a tuple containing two input iterators.
-   *  @param  tpl  Tuple.
-   */
-  template<class _InputIterator>
-    inline _InputIterator
-    end(const tuple<_InputIterator, _InputIterator>& __tpl)
-    { return get<1>(__tpl); }
-
-  /**
    * Stores a tuple of indices. Used by bind() to extract the elements
    * in a tuple. 
    */
Index: testsuite/20_util/tuple/range_access.cc
===================================================================
--- testsuite/20_util/tuple/range_access.cc	(revision 162940)
+++ testsuite/20_util/tuple/range_access.cc	(working copy)
@@ -1,33 +0,0 @@ 
-// { dg-do compile }
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2010 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
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without Pred the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License along
-// with this library; see the file COPYING3.  If not see
-// <http://www.gnu.org/licenses/>.
-
-// 20.4.2.10, tuple range access: pair range access [tuple.range]
-
-#include <tuple>
-#include <vector>
-
-void
-test01()
-{
-  std::vector<double> v{1.0, 2.0, 3.0};
-  auto t = std::make_tuple(v.begin(), v.end());
-  std::begin(t);
-  std::end(t);
-}