]> git.ipfire.org Git - thirdparty/gcc.git/commit
libstdc++: Fix tests broken by C++23 P2266R3 "Simpler implicit move"
authorJonathan Wakely <jwakely@redhat.com>
Mon, 3 Oct 2022 11:10:07 +0000 (12:10 +0100)
committerJonathan Wakely <jwakely@redhat.com>
Mon, 3 Oct 2022 11:45:05 +0000 (12:45 +0100)
commit866263a5fe0d657cb9ec06d01bbc100900159036
tree8624429f4a3421e10c9a48ae0e00cf0c508d8e48
parentc0129d6b2a5f2b3cfedd213d48c95581f75312aa
libstdc++: Fix tests broken by C++23 P2266R3 "Simpler implicit move"

In C++23 mode these tests started to FAIL because an rvalue reference
parameter can no longer be bound to an lvalue reference return type. As
confirmed by Ville (who added these tests) the problem overloads are not
intended to be called, and only exist to verify that they don't
interfere with the intended behaviour. This changes the function bodies
to just throw, so that the tests will fail if the function is called.

libstdc++-v3/ChangeLog:

* testsuite/27_io/basic_ostream/inserters_other/char/6.cc:
Change body of unused operator<< overload to throw if called.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc:
Likewise.
libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/char/6.cc
libstdc++-v3/testsuite/27_io/basic_ostream/inserters_other/wchar_t/6.cc