Skip to content

Commit a94d64f

Browse files
committed
P3222R0 Fix C++26 by adding transposed special cases for P2642 layouts
1 parent 1dabdd3 commit a94d64f

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

source/numerics.tex

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13066,6 +13066,12 @@
1306613066
\item
1306713067
otherwise, \tcode{layout_left} if \tcode{Layout} is \tcode{layout_right};
1306813068
\item
13069+
otherwise, \tcode{layout_right_padded<PaddingValue>} if \tcode{Layout} is \tcode{layout_left_padded<PaddingValue>}
13070+
for some \tcode{size_t} value \tcode{PaddingValue};
13071+
\item
13072+
otherwise, \tcode{layout_left_padded<PaddingValue>} if \tcode{Layout} is \tcode{layout_right_padded<PaddingValue>}
13073+
for some \tcode{size_t} value \tcode{PaddingValue};
13074+
\item
1306913075
otherwise, \tcode{layout_stride} if \tcode{Layout} is \tcode{layout_stride};
1307013076
\item
1307113077
otherwise,
@@ -13108,6 +13114,22 @@
1310813114
a.accessor())
1310913115
\end{codeblock}
1311013116
\item
13117+
otherwise,
13118+
\begin{codeblock}
13119+
R(a.data_handle(), ReturnMapping(@\exposid{transpose-extents}@(a.mapping().extents()),
13120+
a.mapping().stride(1)), a.accessor())
13121+
\end{codeblock}
13122+
if \tcode{Layout} is \tcode{layout_left_padded<PaddingValue>}
13123+
for some \tcode{size_t} value \tcode{PaddingValue};
13124+
\item
13125+
otherwise,
13126+
\begin{codeblock}
13127+
R(a.data_handle(), ReturnMapping(@\exposid{transpose-extents}@(a.mapping().extents()),
13128+
a.stride(0)), a.accessor())
13129+
\end{codeblock}
13130+
if \tcode{Layout} is \tcode{layout_right_padded<PaddingValue>}
13131+
for some \tcode{size_t} value \tcode{PaddingValue};
13132+
\item
1311113133
otherwise, if \tcode{Layout} is \tcode{layout_stride},
1311213134
\begin{codeblock}
1311313135
R(a.data_handle(), ReturnMapping(@\exposid{transpose-extents}@(a.mapping().extents()),

source/support.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -710,7 +710,7 @@
710710
#define @\defnlibxname{cpp_lib_jthread}@ 201911L // also in \libheader{stop_token}, \libheader{thread}
711711
#define @\defnlibxname{cpp_lib_latch}@ 201907L // also in \libheader{latch}
712712
#define @\defnlibxname{cpp_lib_launder}@ 201606L // freestanding, also in \libheader{new}
713-
#define @\defnlibxname{cpp_lib_linalg}@ 202311L // also in \libheader{linalg}
713+
#define @\defnlibxname{cpp_lib_linalg}@ 202411L // also in \libheader{linalg}
714714
#define @\defnlibxname{cpp_lib_list_remove_return_type}@ 201806L // also in \libheader{forward_list}, \libheader{list}
715715
#define @\defnlibxname{cpp_lib_logical_traits}@ 201510L // freestanding, also in \libheader{type_traits}
716716
#define @\defnlibxname{cpp_lib_make_from_tuple}@ 201606L // freestanding, also in \libheader{tuple}

0 commit comments

Comments
 (0)