Skip to content

move padded layouts and dims from Experimental to the standard namespace#447

Open
nmm0 wants to merge 5 commits intokokkos:stablefrom
nmm0:404-move-padded-layout-out-of-experimental
Open

move padded layouts and dims from Experimental to the standard namespace#447
nmm0 wants to merge 5 commits intokokkos:stablefrom
nmm0:404-move-padded-layout-out-of-experimental

Conversation

@nmm0
Copy link
Contributor

@nmm0 nmm0 commented Feb 2, 2026

Closes #404

@nmm0 nmm0 changed the title move padded layouts from Experimental to the standard namespace move padded layouts and dims from Experimental to the standard namespace Feb 2, 2026
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Moves layout_left_padded / layout_right_padded and dims out of the experimental/proposed namespace into the standard namespace to align with their C++26 standardization (closes #404).

Changes:

  • Update padded layout definitions and related traits/usages to live in MDSPAN_IMPL_STANDARD_NAMESPACE / Kokkos:: rather than ...::Experimental::.
  • Update dims usage to MDSPAN_IMPL_STANDARD_NAMESPACE::dims and adjust the experimental header accordingly.
  • Refactor tests, compilation tests, and benchmarks to use the new namespace locations.

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/test_submdspan_static_slice.cpp Updates expected padded layout types to Kokkos::layout_*_padded.
tests/test_submdspan.cpp Switches padded layout aliases to Kokkos::layout_*_padded; minor whitespace cleanup.
tests/test_layout_padded_right.cpp Updates padded layout and detail trait references from experimental/proposed to standard namespace.
tests/test_layout_padded_left.cpp Updates padded layout and detail trait references from experimental/proposed to standard namespace.
tests/test_dims.cpp Updates dims usage to MDSPAN_IMPL_STANDARD_NAMESPACE::dims.
include/experimental/__p2642_bits/layout_padded_fwd.hpp Removes proposed-namespace wrapping so padded layouts are declared in the standard namespace.
include/experimental/__p2642_bits/layout_padded.hpp Removes proposed-namespace wrapping and updates internal references accordingly.
include/experimental/__p2630_bits/submdspan_mapping.hpp Updates submdspan mapping code to refer to layout_*_padded in the standard namespace.
include/experimental/__p2389_bits/dims.hpp Moves dims alias to the standard namespace (and removes proposed namespace wrapper).
include/experimental/__p0009_bits/layout_stride.hpp Updates trait checks for padded mappings to reference standard detail::is_layout_*_padded_mapping.
include/experimental/__p0009_bits/layout_right.hpp Updates converting ctor constraints/checks to use standard padded-mapping traits and checks.
include/experimental/__p0009_bits/layout_left.hpp Updates converting ctor constraints/checks to use standard padded-mapping traits and checks.
compilation_tests/ctest_layout_convertible.cpp Updates compilation-time checks to use Kokkos::layout_*_padded.
benchmarks/sum/sum_3d_common.hpp Removes unused proposed-namespace alias (now that padded/dims moved).
benchmarks/fill.hpp Removes unused proposed-namespace alias (now that padded/dims moved).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

@mhoemmen mhoemmen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we consider also regenerating the single-header file for Compiler Explorer as part of this PR? It would be excellent for the single-header version to have the same namespaces as the installable version. Thanks! : - )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

move padded layout out of experimental

3 participants