<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/source/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in list</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/source/history/llvm-project/libcxx/include/list#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/list</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>9474e09459189fbed30f329a669f9c14979c5367 - [libc++] Granularize the &lt;new&gt; header (#119270)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#9474e09459189fbed30f329a669f9c14979c5367</link>
        <description>[libc++] Granularize the &lt;new&gt; header (#119270)This disentangles the code which previously had a mix of many #ifdefs, anon-versioned namespace and a versioned namespace. It also makes itclearer which parts of &lt;new&gt; are implemented on Windows by including &lt;new.h&gt;.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Fri, 13 Dec 2024 19:17:56 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&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/source/history/llvm-project/libcxx/include/list#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/list</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>8fde648aad1affa4e8680a9fd14a0816d73e5774 - [libc++] Remove obsolete accessors in std::list and std::forward_list (#115748)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#8fde648aad1affa4e8680a9fd14a0816d73e5774</link>
        <description>[libc++] Remove obsolete accessors in std::list and std::forward_list (#115748)We don&apos;t need these accessors anymore now that we stopped usingcompressed-pair.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Thu, 14 Nov 2024 12:09:11 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>c6f3b7bcd0596d30f8dabecdfb9e44f9a07b6e4c - [libc++] Refactor the configuration macros to being always defined (#112094)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#c6f3b7bcd0596d30f8dabecdfb9e44f9a07b6e4c</link>
        <description>[libc++] Refactor the configuration macros to being always defined (#112094)This is a follow-up to #89178. This updates the `&lt;__config_site&gt;`macros.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Wed, 06 Nov 2024 09:39:19 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>397707f7188b6df52de1cff85e08e64e3ee5acc3 - [libc++] __uglify non-conforming member typedef `base` (#112843)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#397707f7188b6df52de1cff85e08e64e3ee5acc3</link>
        <description>[libc++] __uglify non-conforming member typedef `base` (#112843)Currently, libc++&apos;s `bitset`, `forward_list`, and `list` havenon-conforming member typedef name `base`. The typedef is private, butcan cause ambiguity in name lookup.Some other classes in libc++ that are either implementation details ornot precisely specified by the standard also have member typdef `base`.I think this can still be conforming.Follows up #80706 and #111127.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Fri, 18 Oct 2024 15:27:12 +0000</pubDate>
        <dc:creator>A. Jiang &lt;de34@live.cn&gt;</dc:creator>
    </item>
<item>
        <title>8f9cce0bef317076fbdce677d6d6744ebd5dc02a - [libc++] Add container_traits (prework for `std::flat_map`) (#109578)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#8f9cce0bef317076fbdce677d6d6744ebd5dc02a</link>
        <description>[libc++] Add container_traits (prework for `std::flat_map`) (#109578)This PR is extracted fromhttps://github.com/llvm/llvm-project/pull/98643, as per code reviewrequesthttps://github.com/llvm/llvm-project/pull/98643#discussion_r1768967793

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Sat, 12 Oct 2024 17:29:59 +0000</pubDate>
        <dc:creator>Hui &lt;hui.xie1990@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>ba87515fea90b5d55836a8e3be63a7e683ce299d - [libc++][RFC] Always define internal feature test macros (#89178)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#ba87515fea90b5d55836a8e3be63a7e683ce299d</link>
        <description>[libc++][RFC] Always define internal feature test macros (#89178)Currently, the library-internal feature test macros are only defined ifthe feature is not available, and always have the prefix`_LIBCPP_HAS_NO_`. This patch changes that, so that they are alwaysdefined and have the prefix `_LIBCPP_HAS_` instead. This changes thecanonical use of these macros to `#if _LIBCPP_HAS_FEATURE`, which meansthat using an undefined macro (e.g. due to a missing include) isdiagnosed now. While this is rather unlikely currently, a similar changein `&lt;__configuration/availability.h&gt;` caught a few bugs. This alsoimproves readability, since it removes the double-negation of `#ifndef_LIBCPP_HAS_NO_FEATURE`.The current patch only touches the macros defined in `&lt;__config&gt;`. Ifpeople are happy with this approach, I&apos;ll make a follow-up PR to alsochange the macros defined in `&lt;__config_site&gt;`.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Sat, 12 Oct 2024 07:49:52 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>01df775dc42b62141ad07ad30aaa361ab162b8f5 - [libc++] Take the ABI break for `std::list`&apos;s pointer UB unconditionally (#100585)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#01df775dc42b62141ad07ad30aaa361ab162b8f5</link>
        <description>[libc++] Take the ABI break for `std::list`&apos;s pointer UB unconditionally (#100585)This ABI break only affects fancy pointer which have a different valuerepresentation when pointing to a base of T instead of T itself. Thisseems like a rather small set of fancy pointers, which themselvesalready represent a very small niche. This patch swaps a pointer to Twith a pointer to base of T in a few library-internal types.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Mon, 16 Sep 2024 15:55:33 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>27c83382d83dce0f33ae67abb3bc94977cb3031f - [libc++] Replace `__compressed_pair` with `[[no_unique_address]]` (#76756)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#27c83382d83dce0f33ae67abb3bc94977cb3031f</link>
        <description>[libc++] Replace `__compressed_pair` with `[[no_unique_address]]` (#76756)This significantly simplifies the code, improves compile times andimproves the object layout of types using `__compressed_pair` in theunstable ABI. The only downside is that this is extremely ABI sensitiveand pedantically breaks the ABI for empty final types, since the addressof the subobject may change. The ABI of the whole object should not beaffected.Fixes #91266Fixes #93069

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Mon, 16 Sep 2024 09:08:57 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>17e0686ab1107a1a675d8783383dedf70fa24033 - [libc++][NFC] Use [[__nodiscard__]] unconditionally (#80454)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#17e0686ab1107a1a675d8783383dedf70fa24033</link>
        <description>[libc++][NFC] Use [[__nodiscard__]] unconditionally (#80454)`__has_cpp_attribute(__nodiscard__)` is always true now, so we might aswell replace `_LIBCPP_NODISCARD`. It&apos;s one less macro that can result inbad diagnostics.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Thu, 12 Sep 2024 19:18:43 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>e4fdbcc28f19b59fef065f2a6f939f91f286b9a8 - [libc++] Add miscellaneous missing includes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#e4fdbcc28f19b59fef065f2a6f939f91f286b9a8</link>
        <description>[libc++] Add miscellaneous missing includes

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Wed, 04 Sep 2024 21:27:46 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>348e74139ad7f06fdf8b332a81842de4bdf03b0c - [libc++][NFC] Run clang-format on libcxx/include</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#348e74139ad7f06fdf8b332a81842de4bdf03b0c</link>
        <description>[libc++][NFC] Run clang-format on libcxx/includeThis re-formats a few headers that had become out-of-sync with respectto formatting since we ran clang-format on the whole codebase. There&apos;ssurprisingly few instances of it.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Fri, 30 Aug 2024 16:07:07 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>d043e4c322489fa5b9f6363e3c83984219c2b602 - [libc++] Restore `__synth_three_way` lambda (#90398)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#d043e4c322489fa5b9f6363e3c83984219c2b602</link>
        <description>[libc++] Restore `__synth_three_way` lambda (#90398)Restore `__synth_three_way` lambda to match the Standard. GH-57222 is done, restoring the Standard wording implementation shouldbe possible.https://github.com/llvm/llvm-project/blob/df28d4412c1d21b0e18896c92ac77d2fac7729f1/libcxx/include/__compare/synth_three_way.h#L28According to commenthttps://github.com/llvm/llvm-project/issues/59513#issuecomment-2068338762,GH-59513 is not a blocker.Co-authored-by: Hristo Hristov &lt;zingam@outlook.com&gt;

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Sun, 07 Jul 2024 17:49:10 +0000</pubDate>
        <dc:creator>Hristo Hristov &lt;hghristov.rmm@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>79e8a5952366eacd92201a8d6472726fc14e00fd - [libc++] Move allocator assertion into allocator_traits (#94750)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#79e8a5952366eacd92201a8d6472726fc14e00fd</link>
        <description>[libc++] Move allocator assertion into allocator_traits (#94750)There is code duplication in all containers that static_assert theallocator matches the allocator requirements in the spec. This check canbe moved into a more centralised place.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Tue, 25 Jun 2024 15:13:48 +0000</pubDate>
        <dc:creator>Hui &lt;hui.xie1990@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>1f98ac095e35f12a85d71101269df00279faa55c - [libc++][NFC] Replace _NOEXCEPT and _LIBCPP_CONSTEXPR macros with the keywords in C++11 code (#96387)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#1f98ac095e35f12a85d71101269df00279faa55c</link>
        <description>[libc++][NFC] Replace _NOEXCEPT and _LIBCPP_CONSTEXPR macros with the keywords in C++11 code (#96387)

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Sun, 23 Jun 2024 20:03:41 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>cb417401879ce70b441a999c4a30f7b64b8d426b - [libc++] Refactor&lt;__type_traits/is_swappable.h&gt; (#86822)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#cb417401879ce70b441a999c4a30f7b64b8d426b</link>
        <description>[libc++] Refactor&lt;__type_traits/is_swappable.h&gt; (#86822)This changes the `is_swappable` implementation to use variable templatesfirst and basing the class templates on that. This avoids instantiatingthem when the `_v` versions are used, which are generally less resourceintensive.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Tue, 18 Jun 2024 09:01:43 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>bbe4a80605619dcb819ccfee016cf1355fb00af2 - [libc++] Enable modernize-use-equals-delete (#93293)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#bbe4a80605619dcb819ccfee016cf1355fb00af2</link>
        <description>[libc++] Enable modernize-use-equals-delete (#93293)Differential Revision: https://reviews.llvm.org/D121213

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Tue, 18 Jun 2024 08:51:57 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>6b4b29f85900995b2a3b817548be4a534d46763b - [libc++][NFC] Remove unnecessary parens in static_asserts (#95605)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#6b4b29f85900995b2a3b817548be4a534d46763b</link>
        <description>[libc++][NFC] Remove unnecessary parens in static_asserts (#95605)These were required a long time ago due to `static_assert` not actuallybeing available in C++03. Now `static_assert` is simply mapped to`_Static_assert` in C++03, making the additional parens unnecessary.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Tue, 18 Jun 2024 08:45:30 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>04f01a2b9cedc291fa7dd941de841dc957c75a33 - [libc++] Make the __availability header a sub-header of __config (#93083)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/list#04f01a2b9cedc291fa7dd941de841dc957c75a33</link>
        <description>[libc++] Make the __availability header a sub-header of __config (#93083)In essence, this header has always been related to configuration ofthe library but we didn&apos;t want to put it inside &lt;__config&gt; due tocomplexity reasons. Now that we have sub-headers in &lt;__config&gt;, wecan move &lt;__availability&gt; to it and stop including it everywhere sincewe already obtain the required macros via &lt;__config&gt;.

            List of files:
            /llvm-project/libcxx/include/list</description>
        <pubDate>Wed, 29 May 2024 01:29:11 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
