]> git.ipfire.org Git - thirdparty/gcc.git/commit
libstdc++: Implement P2655R3 changes to common_reference bullet 1
authorPatrick Palka <ppalka@redhat.com>
Fri, 5 Dec 2025 18:43:29 +0000 (13:43 -0500)
committerPatrick Palka <ppalka@redhat.com>
Fri, 5 Dec 2025 18:43:29 +0000 (13:43 -0500)
commita9fd651fbb54024548158ee605eb13dce77afe26
tree5bc4fcfd25c938c8a06e232e4e4c61db1eb91b8b
parentcbdbbdd1fccfd789e6fbcb37b1b602bb7482de4b
libstdc++: Implement P2655R3 changes to common_reference bullet 1

We implement this paper as a DR against C++20 (as do MSVC and libc++).

PR libstdc++/120446

libstdc++-v3/ChangeLog:

* include/bits/version.def (common_reference): New.
* include/bits/version.h: Regenerate.
* include/std/type_traits (__glibcxx_want_common_reference):
Define.
(__common_reference_impl<T1, T2, 1>): Add pointer convertibility
constraints as per P2655R3.
* testsuite/20_util/common_reference/p2655r3.cc: New test.

Reviewed-by: Tomasz KamiƄski <tkaminsk@redhat.com>
Reviewed-by: Jonathan Wakely <jwakely@redhat.com>
libstdc++-v3/include/bits/version.def
libstdc++-v3/include/bits/version.h
libstdc++-v3/include/std/type_traits
libstdc++-v3/testsuite/20_util/common_reference/p2655r3.cc [new file with mode: 0644]