[PATCH v1 0/6] Implement layouts from mdspan.
Luc Grosheintz
luc.grosheintz@gmail.com
Sun May 18 20:04:33 GMT 2025
Technically, this is the second iteration of these patches. Previous
discussion can be found here:
https://gcc.gnu.org/pipermail/libstdc++/2025-May/061350.html`
The implementation of `layout_stride::mapping::is_exhaustive` needs
to be discussed, because for empty extents, the standard seems to
require implementing a formula that doesn't require returning true
in all cases.
Luc Grosheintz (6):
libstdc++: Implement layout_left from mdspan.
libstdc++: Add tests for layout_left.
libstdc++: Implement layout_right from mdspan.
libstdc++: Add tests for layout_right.
libstdc++: Implement layout_stride from mdspan.
libstdc++: Add tests for layout_stride.
libstdc++-v3/include/std/mdspan | 604 ++++++++++++++++++
.../mdspan/layouts/class_mandate_neg.cc | 42 ++
.../23_containers/mdspan/layouts/ctors.cc | 421 ++++++++++++
.../23_containers/mdspan/layouts/mapping.cc | 573 +++++++++++++++++
.../23_containers/mdspan/layouts/stride.cc | 494 ++++++++++++++
5 files changed, 2134 insertions(+)
create mode 100644 libstdc++-v3/testsuite/23_containers/mdspan/layouts/class_mandate_neg.cc
create mode 100644 libstdc++-v3/testsuite/23_containers/mdspan/layouts/ctors.cc
create mode 100644 libstdc++-v3/testsuite/23_containers/mdspan/layouts/mapping.cc
create mode 100644 libstdc++-v3/testsuite/23_containers/mdspan/layouts/stride.cc
--
2.49.0
More information about the Libstdc++
mailing list