[PATCH v2] libstdc++: C++23, implement WG21 P1679R3
Wed Jan 27 12:44:31 GMT 2021
On 27/01/21 12:40 +0000, Jonathan Wakely wrote:
>On 15/01/21 01:23 +0000, Paul Fee via Libstdc++ wrote:
>>Add contains member function to basic_string_view and basic_string.
>>The new method is enabled for -std=gnu++20, gnu++2b and c++2b. This allows
>>users to access the method as a GNU extension to C++20. The conditional
>>test may be reduced to "__cplusplus > 202011L" once GCC has a c++2b switch.
>>Changes since v1 (13th Jan 2021)
>> Test __cplusplus >= 202011L, rather than __cplusplus > 202011L.
>>* As suggested by Jonathan Wakely:
>> Adjust formatting.
>> Test feature-test macro is defined by <string_view> and <version>.
>> Correct copyright dates on new files.
>> Fix comment typo.
>> Add contains member function to basic_string_view.
>> Likewise to basic_string_view, both with and without _GLIBCXX_USE_CXX11_ABI.
>> Enabled with -std=gnu++20, gnu++2b and c++2b.
>> * include/bits/basic_string.h (basic_string::contains): New.
>> * libstdc++-v3/include/std/string_view (basic_string_view::contains): New.
>> * testsuite/21_strings/basic_string/operations/contains/char/1.cc: New test.
>> * testsuite/21_strings/basic_string/operations/contains/wchar_t/1.cc:
>> * testsuite/21_strings/basic_string_view/operations/contains/char/1.cc:
>> * testsuite/21_strings/basic_string_view/operations/contains/wchar_t/1.cc:
>I've committed this to master now.
>Now that -std=gnu++23 is supported I changed the preprocessor
>condition to just check __cplusplus > 201102L (and not enable it for
>-std=gnu++20) and changed the tests to use 23 not 2b. I've attached
>what I committed.
>Thanks for your patch!
And here's the patch for the release notes, pushed to wwwdocs.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 1135 bytes
Desc: not available
More information about the Libstdc++