I have posted v4 for PATCH 1/2 that adds data member tests. Both patches
looks good to me.
Thank you very much for your continued high quality contributions.

On Thu, Sep 4, 2025 at 2:21 PM Luc Grosheintz <luc.groshei...@gmail.com>
wrote:

> The changes since v2 are in the test code:
>
>   - There's a short test for string literals. I had trouble doing
>     much with them.
>
>   - Convert commented out invalid code into neg test using static_asserts
> for:
>     invocable, indexable.
>
>   - Check type of expression in tests for: operator{->*,||,&&,<=>,==,!=}
>
>   - Check mixed wrapped and unwrapped for: operator{||,&&,==,!=,<=>}.
>
>   - For || and && check that while the result is not std::cw<bool(...)>,
>     it's still a core constant.
>
>   - Add tests checking compatibility with other constant wrappers.
>
>   - Add `check_same(lhs, rhs)` which checks that the two compare equal and
> have
>     the same type; and clean up the code by using it.
>
>   - The example from the standard was converted to a compile
>     only test (with check for failure).
>
>   - Add tests for CTAD of span/mdspan from boolean constants.
>
>   - Removed adl.cc because instantiate.cc is a better test of the ADL
> behaviour.
>
> Luc Grosheintz (2):
>   libstdc++: Implement constant_wrapper, cw from P2781R9.
>   libstdc++: Adjust span/mdspan CTAD for P2781R9.
>
>  libstdc++-v3/include/bits/version.def         |   8 +
>  libstdc++-v3/include/bits/version.h           |  10 +
>  libstdc++-v3/include/std/span                 |   3 +-
>  libstdc++-v3/include/std/type_traits          | 371 +++++++++++
>  libstdc++-v3/src/c++23/std.cc.in              |   4 +
>  .../testsuite/20_util/constant_wrapper/adl.cc |  86 +++
>  .../testsuite/20_util/constant_wrapper/ex.cc  |  39 ++
>  .../20_util/constant_wrapper/generic.cc       | 386 ++++++++++++
>  .../20_util/constant_wrapper/instantiate.cc   | 575 ++++++++++++++++++
>  .../20_util/constant_wrapper/op_comma_neg.cc  |  14 +
>  .../constant_wrapper/other_wrappers.cc        |  75 +++
>  .../20_util/constant_wrapper/version.cc       |  11 +
>  .../23_containers/mdspan/extents/misc.cc      |  22 +-
>  .../testsuite/23_containers/mdspan/mdspan.cc  |  23 +-
>  .../testsuite/23_containers/span/deduction.cc |  20 +-
>  15 files changed, 1632 insertions(+), 15 deletions(-)
>  create mode 100644 libstdc++-v3/testsuite/20_util/constant_wrapper/adl.cc
>  create mode 100644 libstdc++-v3/testsuite/20_util/constant_wrapper/ex.cc
>  create mode 100644
> libstdc++-v3/testsuite/20_util/constant_wrapper/generic.cc
>  create mode 100644
> libstdc++-v3/testsuite/20_util/constant_wrapper/instantiate.cc
>  create mode 100644
> libstdc++-v3/testsuite/20_util/constant_wrapper/op_comma_neg.cc
>  create mode 100644
> libstdc++-v3/testsuite/20_util/constant_wrapper/other_wrappers.cc
>  create mode 100644
> libstdc++-v3/testsuite/20_util/constant_wrapper/version.cc
>
> --
> 2.51.0
>
>

Reply via email to