]> gcc.gnu.org Git - gcc.git/commit
libstdc++: Deprecate non-standard std::vector<bool>::insert(pos) [PR104559]
authorJonathan Wakely <jwakely@redhat.com>
Thu, 17 Feb 2022 17:37:42 +0000 (17:37 +0000)
committerJonathan Wakely <jwakely@redhat.com>
Thu, 17 Feb 2022 23:44:25 +0000 (23:44 +0000)
commit12a88e6e208fa45a449775bfb9353c777a6081aa
treee941071396352f3309d3c49a14f8e7c08936b23e
parent2c9b7077b72529fbbe896212a0088bff6025c5e7
libstdc++: Deprecate non-standard std::vector<bool>::insert(pos) [PR104559]

The SGI STL and pre-1998 drafts of the C++ standard had a default
argument for vector<bool>::insert(iterator, const bool&) which was
remove by N1051. The default argument is still present in libstdc++ for
some reason. There are no tests verifying it as an extension, so I don't
think it has been kept intentionally.

This removes the default argument but adds an overload without the
second parameter, and adds the deprecated attribute to it. This allows
any code using it to keep working (for now) but with a warning.

libstdc++-v3/ChangeLog:

PR libstdc++/104559
* doc/xml/manual/evolution.xml: Document deprecation.
* doc/html/manual/api.html: Regenerate.
* include/bits/stl_bvector.h (insert(const_iterator, const bool&)):
Remove default argument.
(insert(const_iterator)): New overload with deprecated attribute.
* testsuite/23_containers/vector/bool/modifiers/insert/104559.cc:
New test.
libstdc++-v3/doc/html/manual/api.html
libstdc++-v3/doc/xml/manual/evolution.xml
libstdc++-v3/include/bits/stl_bvector.h
libstdc++-v3/testsuite/23_containers/vector/bool/modifiers/insert/104559.cc [new file with mode: 0644]
This page took 0.061606 seconds and 5 git commands to generate.