aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2022-01-18 16:26:45 +0000
committerJonathan Wakely <jwakely@redhat.com>2022-01-18 20:41:46 +0000
commitfe3ed885cda5ab920d361b694ee539242052022f (patch)
treea63b3cabe4968a46b161824b30fa700c8bea1feb /gcc
parent3c4a54adb2164315d18fd8980c0fc37eb3d22252 (diff)
downloadgcc-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