diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2022-01-18 16:26:45 +0000 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2022-01-18 20:41:46 +0000 |
commit | fe3ed885cda5ab920d361b694ee539242052022f (patch) | |
tree | a63b3cabe4968a46b161824b30fa700c8bea1feb /gcc | |
parent | 3c4a54adb2164315d18fd8980c0fc37eb3d22252 (diff) | |
download | gcc-fe3ed885cda5ab920d361b694ee539242052022f.zip gcc-fe3ed885cda5ab920d361b694ee539242052022f.tar.gz gcc-fe3ed885cda5ab920d361b694ee539242052022f.tar.bz2 |
libstdc++: Limit new basic_string(nullptr_t) constructor to C++23 [PR104099]
The new deleted constructors added by P2166R1 are a breaking change,
making previously valid code ill-formed in C++23. As a result, they
should only be defined for C++23 and not for C++11 and up.
libstdc++-v3/ChangeLog:
PR libstdc++/104099
* include/bits/basic_string.h (basic_string(nullptr_t)): Only
define for C++23.
(operator=(nullptr_t)): Likewise.
* include/bits/cow_string.h: Likewise.
* include/std/string_view (basic_string_view(nullptr_t)):
Likewise.
* testsuite/21_strings/basic_string/cons/char/nullptr.cc: Adjust
expected error. Add examples that become ill-formed in C++23.
* testsuite/21_strings/basic_string_view/cons/char/nonnull.cc:
Adjust expected errors.
* testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc:
Likewise.
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions