https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111055
--- Comment #19 from 康桓瑋 <hewillk at gmail dot com> --- (In reply to GCC Commits from comment #18) > The master branch has been updated by Jonathan Wakely <r...@gcc.gnu.org>: > > https://gcc.gnu.org/g:882d3b319dbf50ae64080731a1398031c100b7c7 > > commit r15-9378-g882d3b319dbf50ae64080731a1398031c100b7c7 > Author: Jonathan Wakely <jwak...@redhat.com> > Date: Thu Apr 10 13:40:53 2025 +0100 > > libstdc++: Add P1206R7 from_range members to std::string [PR111055] > > This is the last piece of P1206R7, adding new members to > std::basic_string. > > libstdc++-v3/ChangeLog: > > PR libstdc++/111055 > * include/bits/basic_string.h (_S_copy_range): New function. > (basic_string(from_range_t, R%%, const Alloc&)): New > constructor. > (append_range, assign_range, insert_range, replace_with_range): > New functions. > * include/bits/cow_string.h: Likewise. > * testsuite/21_strings/basic_string/cons/from_range.cc: New > test. > * > testsuite/21_strings/basic_string/modifiers/append/append_range.cc: > New test. > * > testsuite/21_strings/basic_string/modifiers/assign/assign_range.cc: > New test. > * > testsuite/21_strings/basic_string/modifiers/insert/insert_range.cc: > New test. > * > testsuite/21_strings/basic_string/modifiers/replace/replace_with_range.cc: > New test. > > Co-authored-by: Tomasz KamiÅski <tkami...@redhat.com> Consider replace range-for loop to ensure always iterate range via ranges::begin/ranges::end?