streambuf_iterator.h (istreambuf_iterator<>): Declare std::advance for istreambuf_ite...
authorFrançois Dumont <fdumont@gcc.gnu.org>
Mon, 20 Nov 2017 22:30:28 +0000 (22:30 +0000)
committerFrançois Dumont <fdumont@gcc.gnu.org>
Mon, 20 Nov 2017 22:30:28 +0000 (22:30 +0000)
commite324f9cb921234b80c809f8ffbd7ef2d55d583bc
treed38add252c2ed6e4905d28d1855e6e3306405a91
parent9be0a9d6d20e5cb3c50f64b5a9a49070b9a0f267
streambuf_iterator.h (istreambuf_iterator<>): Declare std::advance for istreambuf_iterator of char types to be friend.

2017-11-20  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/streambuf_iterator.h (istreambuf_iterator<>): Declare
std::advance for istreambuf_iterator of char types to be friend.
(std::advance(istreambuf_iterator&, _Distance)): New overload.
* include/std/streambuf (basic_streambuf<>): Declare std::advance for
istreambuf_iterator of char types to be friend.
* testsuite/22_locale/money_get/get/char/9.cc: Have
istreambuf_iterator created on the fly when calling money_get<>::get.
* testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
* testsuite/24_iterators/istreambuf_iterator/debug/1_neg.cc: New.
* testsuite/24_iterators/istreambuf_iterator/debug/2_neg.cc: New.
* testsuite/25_algorithms/advance/istreambuf_iterators/char/1.cc: New.
* testsuite/25_algorithms/advance/istreambuf_iterators/char/1_neg.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/char/2.cc: New.
* testsuite/25_algorithms/advance/istreambuf_iterators/char/2_neg.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/char/3_neg.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/1.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/1_neg.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/2.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/2_neg.cc:
New.
* testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/3_neg.cc:
New.
* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: Leverage
on std::advance overload.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
Likewise.

From-SVN: r254972
19 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/streambuf_iterator.h
libstdc++-v3/include/std/streambuf
libstdc++-v3/testsuite/22_locale/money_get/get/char/9.cc
libstdc++-v3/testsuite/22_locale/money_get/get/wchar_t/9.cc
libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/debug/1_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/debug/2_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/char/1.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/char/1_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/char/2.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/char/2_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/char/3_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/1.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/1_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/2.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/2_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/advance/istreambuf_iterators/wchar_t/3_neg.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc
libstdc++-v3/testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc