]> git.ipfire.org Git - thirdparty/gcc.git/commit
libstdc++: Add monadic operations to std::expected for C++23 (P2505R5)
authorJonathan Wakely <jwakely@redhat.com>
Thu, 15 Dec 2022 15:47:38 +0000 (15:47 +0000)
committerJonathan Wakely <jwakely@redhat.com>
Fri, 16 Dec 2022 20:59:19 +0000 (20:59 +0000)
commit8d9e2776a6d2bfe6662f79182e85ab79f3cc9522
tree7b22eb46864c3f12e0b90766c27b22ce8155d424
parent59822c39207c9e8be576e9d6c3370bd85ddaf886
libstdc++: Add monadic operations to std::expected for C++23 (P2505R5)

This was approved for C++23 last month in Kona.

libstdc++-v3/ChangeLog:

* include/std/expected (expected): Add monadic operations.
(expected<void, E>): Likewise.
* include/std/version (__cpp_lib_expected): Bump value.
* testsuite/20_util/expected/synopsis.cc: Adjust expected macro
value.
* testsuite/20_util/expected/version.cc: Likewise.
* testsuite/20_util/expected/illformed_neg.cc: Prune additional
errors from ill-formed monadic operations.
* testsuite/20_util/expected/observers.cc: Check error_or.
* testsuite/20_util/expected/monadic.cc: New test.
libstdc++-v3/include/std/expected
libstdc++-v3/include/std/version
libstdc++-v3/testsuite/20_util/expected/illformed_neg.cc
libstdc++-v3/testsuite/20_util/expected/monadic.cc [new file with mode: 0644]
libstdc++-v3/testsuite/20_util/expected/observers.cc
libstdc++-v3/testsuite/20_util/expected/synopsis.cc
libstdc++-v3/testsuite/20_util/expected/version.cc