<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in mdspan</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>b9a2658a3e8bd13b0f9e7a8a440832a95b377216 - [libc++][C++03] Use `__cxx03/` headers in C++03 mode (#109002)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#b9a2658a3e8bd13b0f9e7a8a440832a95b377216</link>
        <description>[libc++][C++03] Use `__cxx03/` headers in C++03 mode (#109002)This patch implements the forwarding to frozen C++03 headers asdiscussed inhttps://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc. In theRFC, we initially proposed selecting the right headers from the Clangdriver, however consensus seemed to steer towards handling this in thelibrary itself. This patch implements that direction.At a high level, the changes basically amount to making each publicheader look like this:```// inside &lt;vector&gt;#ifdef _LIBCPP_CXX03_LANG#  include &lt;__cxx03/vector&gt;#else  // normal &lt;vector&gt; content#endif```In most cases, public headers are simple umbrella headers so there isn&apos;tmuch code in the #else branch. In other cases, the #else branch containsthe actual implementation of the header.

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Sat, 21 Dec 2024 12:01:48 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>c166a9c713ec86b86f1f178a5133bc128fd0a610 - [libc++] Add #if 0 block to all the top-level headers (#119234)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#c166a9c713ec86b86f1f178a5133bc128fd0a610</link>
        <description>[libc++] Add #if 0 block to all the top-level headers (#119234)Including The frozen C++03 headers results in a lot of formattingchanges in the main headers, so this splits these changes into aseparate commit instead.This is part ofhttps://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc.

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Tue, 10 Dec 2024 15:02:12 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>de5e4ebb5a1b82df5b1d27f423dbad30f872aac6 - [libc++] Remove transitive includes from empty headers (#116295)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#de5e4ebb5a1b82df5b1d27f423dbad30f872aac6</link>
        <description>[libc++] Remove transitive includes from empty headers (#116295)This removes transitive includes that are only in a header that is emptyin a given C++ version.

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Mon, 18 Nov 2024 18:59:47 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>dfddc0c4843baaf9605aeb1c4f82eac185e90265 - [libc++] Include the rest of the detail headers by version in the umbrella headers (#96032)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#dfddc0c4843baaf9605aeb1c4f82eac185e90265</link>
        <description>[libc++] Include the rest of the detail headers by version in the umbrella headers (#96032)This is a follow-up to #83740.

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Thu, 18 Jul 2024 08:59:58 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>4e338dce4de4ca1476e2b8f9c907769691a9093b - [libc++] P2389R2: `dextents` Index Type Parameter (#97393)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#4e338dce4de4ca1476e2b8f9c907769691a9093b</link>
        <description>[libc++] P2389R2: `dextents` Index Type Parameter (#97393)This patch implements P2389R2, which was adopted at the St. Louis meeting.It builds upon previous enhancements from P2299R3, which introduced deductionguides and the `dextents` alias template.

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Mon, 15 Jul 2024 15:23:34 +0000</pubDate>
        <dc:creator>Xiaoyang Liu &lt;siujoeng.lau@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>7cafe04e0d74c1e9f7e3871a0bcdf4ccb1c89f0c - [libc++] P3029R1: Better `mdspan`&apos;s CTAD (#87873)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#7cafe04e0d74c1e9f7e3871a0bcdf4ccb1c89f0c</link>
        <description>[libc++] P3029R1: Better `mdspan`&apos;s CTAD (#87873)## AbstractThis pull request implements [P3029R1](https://wg21.link/P3029R1). Thepaper discusses the current behavior of `mdspan`&apos;s most commonpointer-indices CTAD, where the `Extents` template parameter is deducedas `dextents` (dynamic extents), even when passing compile-time constantvalues. The author believes this behavior is suboptimal, as it doesn&apos;ttake advantage of the compile-time information. The proposed changesuggests deducing static extents if `integral_constant`-like constantsare passed, resulting in more intuitive syntax and less error-pronecode.## Reference- [P3029R1](https://wg21.link/P3029R1)- [Draft C++ Standard: [span.syn]](https://eel.is/c++draft/span.syn)- [Draft C++ Standard: [mdspan.syn]](https://eel.is/c++draft/mdspan.syn)

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Fri, 12 Apr 2024 17:25:22 +0000</pubDate>
        <dc:creator>Xiaoyang Liu &lt;siujoeng.lau@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>67c4033358f39adcba53e9b70bdd4799c5a306ac - [libc++] LWG-4021 &quot;`mdspan::is_always_meow()` should be `noexcept`&quot;, use `LIBCPP_STATIC_ASSERT` for `noexcept` strengthening (#74254)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#67c4033358f39adcba53e9b70bdd4799c5a306ac</link>
        <description>[libc++] LWG-4021 &quot;`mdspan::is_always_meow()` should be `noexcept`&quot;, use `LIBCPP_STATIC_ASSERT` for `noexcept` strengthening (#74254)Found while running libc++&apos;s test suite with MSVC&apos;s STL.* I&apos;ve filed [LWG-4021](https://cplusplus.github.io/LWG/issue4021)&quot;`mdspan::is_always_meow()` should be `noexcept`&quot; and implemented thisin libc++&apos;s product and test code.* Use `LIBCPP_STATIC_ASSERT` to avoid issues with `noexcept`strengthening in MSVC&apos;s STL.+ As permitted by the Standard, MSVC&apos;s STL conditionally strengthens`mdspan` construction/`is_meow`/`stride` and `elements_view` iterator`base() &amp;&amp;`, and always strengthens `basic_stringbuf` `swap`.+ In `mdspan/properties.pass.cpp`, this also upgrades runtime `assert`sto `static_assert`s.* Improvement: Upgrade `assert` to `static_assert` when inspecting the`noexcept`ness of `std::ranges::iter_move`. (These `!noexcept` testsweren&apos;t causing issues for MSVC&apos;s STL, so I didn&apos;t change them to belibc++-specific.)

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Sun, 10 Dec 2023 10:52:14 +0000</pubDate>
        <dc:creator>Stephan T. Lavavej &lt;stl@nuwen.net&gt;</dc:creator>
    </item>
<item>
        <title>7c44167daa7529d0a1352746e17c9aba6a4ed8ae - [libc++] Updates mdspan synopsis,</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#7c44167daa7529d0a1352746e17c9aba6a4ed8ae</link>
        <description>[libc++] Updates mdspan synopsis,The class layout_stride has been implemented in639a0986f3a34d52533a726e2a4193411cc1312f

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Sat, 25 Nov 2023 13:45:21 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>639a0986f3a34d52533a726e2a4193411cc1312f - [libc++] mdspan - implement layout_stride (#69650)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#639a0986f3a34d52533a726e2a4193411cc1312f</link>
        <description>[libc++] mdspan - implement layout_stride (#69650)This implements layout_stride for C++23 and with that completes theimplementation of the C++23 mdspan header. The feature test macro isadded, and the status pages updated.Co-authored-by: Damien L-G &lt;dalg24@gmail.com&gt;Differential Revision: https://reviews.llvm.org/D157171

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Fri, 20 Oct 2023 14:13:52 +0000</pubDate>
        <dc:creator>Christian Trott &lt;crtrott@sandia.gov&gt;</dc:creator>
    </item>
<item>
        <title>2374ae4362848d92963fac042e8a3e94b9e57e0b - [libc++][nfc] Fixes emacs magic marker.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#2374ae4362848d92963fac042e8a3e94b9e57e0b</link>
        <description>[libc++][nfc] Fixes emacs magic marker.

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Sat, 09 Sep 2023 12:43:12 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>fc4876578131a55b38a9cf5d48698d92982a50e8 - [libc++][mdspan] Implement std::mdspan class</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#fc4876578131a55b38a9cf5d48698d92982a50e8</link>
        <description>[libc++][mdspan] Implement std::mdspan classThis implements P0009 std::mdspan ((https://wg21.link/p0009)),a multidimensional span with customization points forlayouts and data access.Co-authored-by: Damien L-G &lt;dalg24@gmail.com&gt;Differential Revision: https://reviews.llvm.org/154367

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Tue, 25 Jul 2023 04:35:15 +0000</pubDate>
        <dc:creator>Christian Trott &lt;crtrott@sandia.gov&gt;</dc:creator>
    </item>
<item>
        <title>20c6b9d451ca9af8d23fa7bfa5e18565e761450a - [libc++][mdspan] Implement default_accessor</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#20c6b9d451ca9af8d23fa7bfa5e18565e761450a</link>
        <description>[libc++][mdspan] Implement default_accessorThis commit implements default_accessor in support of C++23 mdspan(https://wg21.link/p0009). default_accessor is the trivial accessorusing plain pointers and reference to element types.Co-authored-by: Damien L-G &lt;dalg24@gmail.com&gt;Differential Revision: https://reviews.llvm.org/D153935

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Fri, 14 Jul 2023 17:47:59 +0000</pubDate>
        <dc:creator>Christian Trott &lt;crtrott@sandia.gov&gt;</dc:creator>
    </item>
<item>
        <title>b4ff893877ffe6f80fefd705a9e16a6dcd624851 - [libc++][mdspan] Implement layout_left</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#b4ff893877ffe6f80fefd705a9e16a6dcd624851</link>
        <description>[libc++][mdspan] Implement layout_leftThis commit implements layout_left in support of C++23 mdspan(https://wg21.link/p0009). layout_left is a layout mapping policywhose index mapping corresponds to the memory layout of Fortran arrays.Thus the left most index has stride-1 access, and the right most indexis associated with the largest stride.Co-authored-by: Damien L-G &lt;dalg24@gmail.com&gt;Differential Revision: https://reviews.llvm.org/D153783

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Thu, 29 Jun 2023 19:36:07 +0000</pubDate>
        <dc:creator>Christian Trott &lt;crtrott@sandia.gov&gt;</dc:creator>
    </item>
<item>
        <title>cfa096d9c92e758c4916dfd06d107fcec2edeca4 - [libc++][mdspan] Implement layout_right</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#cfa096d9c92e758c4916dfd06d107fcec2edeca4</link>
        <description>[libc++][mdspan] Implement layout_rightThis commit implements layout_right in support of C++23 mdspan(https://wg21.link/p0009). layout_right is a layout mapping policywhose index mapping corresponds to the memory layout of multidimensionalC-arrays, and is thus also referred to as the C-layout.Co-authored-by: Damien L-G &lt;dalg24@gmail.com&gt;Differential Revision: https://reviews.llvm.org/D151267

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Thu, 29 Jun 2023 14:06:47 +0000</pubDate>
        <dc:creator>Christian Trott &lt;crtrott@sandia.gov&gt;</dc:creator>
    </item>
<item>
        <title>fcaccf817d31d39096f7d0e7014cd6fe2fa3a683 - [libcxx] Add mdspan/extents</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/mdspan#fcaccf817d31d39096f7d0e7014cd6fe2fa3a683</link>
        <description>[libcxx] Add mdspan/extentsThis patch adds std::extents. extents is one of the core classes used by std::mdspan. It describes a multi-dimensional index space with a mix of compile time and runtime sizes. Furthermore, it is templated on the index type used to describe the multi-dimensional index space.The class is designed to be highly optimizable in performance critical code sections, and is fully useable in constant expressions contexts.Testing of this class tends to be somewhat combinatorical, due to the large number of possible corner cases involved in situations where we have both runtime and compile time extents. To add to this, the class is designed to be interoperable (in particular constructible) from arguments which only need to be convertible to the index_type, but are otherwise arbitrary user types. For a larger discussion on the design of this class refer to: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p0009r18.htmlCo-authored-by: Damien L-G &lt;dalg24@gmail.com&gt;Reviewed By: ldionne, #libcSpies: libcxx-commits, H-G-Hristov, tschuett, philnik, arichardson, Mordante, crtrottDifferential Revision: https://reviews.llvm.org/D148067

            List of files:
            /llvm-project/libcxx/include/mdspan</description>
        <pubDate>Tue, 16 May 2023 19:38:11 +0000</pubDate>
        <dc:creator>Christian Trott &lt;crtrott@sandia.gov&gt;</dc:creator>
    </item>
</channel>
</rss>
