From b6717379621288e10cbb2bb6b440947adcabd9cb Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Tue, 30 Aug 2011 15:34:50 +0000 Subject: [PATCH] stl_iterator.h (make_move_iterator): Implement DR2061. 2011-08-30 Paolo Carlini * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061. * testsuite/24_iterators/move_iterator/dr2061.cc: New. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning line numbers. From-SVN: r178330 --- libstdc++-v3/ChangeLog | 7 +++++ libstdc++-v3/include/bits/stl_iterator.h | 5 ++-- .../20_util/weak_ptr/comparison/cmp_neg.cc | 8 ++--- .../24_iterators/move_iterator/dr2061.cc | 29 +++++++++++++++++++ 4 files changed, 43 insertions(+), 6 deletions(-) create mode 100644 libstdc++-v3/testsuite/24_iterators/move_iterator/dr2061.cc diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index d125509d7c2..dac79834adc 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2011-08-30 Paolo Carlini + + * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061. + * testsuite/24_iterators/move_iterator/dr2061.cc: New. + * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning + line numbers. + 2011-08-30 Paolo Carlini * config/os/mingw32/error_constants.h: Fix commas. diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h index 6c82c5c3d1f..624ae64c0ce 100644 --- a/libstdc++-v3/include/bits/stl_iterator.h +++ b/libstdc++-v3/include/bits/stl_iterator.h @@ -1,6 +1,7 @@ // Iterators -*- C++ -*- -// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, +// 2010, 2011 // Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free @@ -1115,7 +1116,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template inline move_iterator<_Iterator> - make_move_iterator(const _Iterator& __i) + make_move_iterator(_Iterator __i) { return move_iterator<_Iterator>(__i); } template. + +#include + +// DR 2061 +void test01() +{ + int a[] = { 1, 2, 3, 4 }; + std::make_move_iterator(a + 4); + std::make_move_iterator(a); +} -- 2.30.2