<?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 set</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/set#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/set</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/source/history/llvm-project/libcxx/include/set#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/set</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>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/set#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/set</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>09e3a360581dc36d0820d3fb6da9bd7cfed87b5d - [libc++][modules] Fix missing and incorrect includes (#108850)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#09e3a360581dc36d0820d3fb6da9bd7cfed87b5d</link>
        <description>[libc++][modules] Fix missing and incorrect includes (#108850)This patch adds a large number of missing includes in the libc++ headersand the test suite. Those were found as part of the effort to movetowards a mostly monolithic top-level std module.

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Mon, 16 Sep 2024 19:06:20 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&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/set#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/set</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>348e74139ad7f06fdf8b332a81842de4bdf03b0c - [libc++][NFC] Run clang-format on libcxx/include</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#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/set</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/set#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/set</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/set#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/set</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/set#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/set</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>e2c2ffbe7a1b5d9e32a2ce64279475b50c4cba5b - [libc++][NFC] Run clang-format on libcxx/include again (#95874)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#e2c2ffbe7a1b5d9e32a2ce64279475b50c4cba5b</link>
        <description>[libc++][NFC] Run clang-format on libcxx/include again (#95874)As time went by, a few files have become mis-formatted w.r.t.clang-format. This was made worse by the fact that formatting was notbeing enforced in extensionless headers. This commit simply brings allof libcxx/include in-line with clang-format again.We might have to do this from time to time as we update our clang-formatversion, but frankly this is really low effort now that we&apos;ve formattedeverything once.

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Tue, 18 Jun 2024 13:13:45 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&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/set#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/set</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>6b4b29f85900995b2a3b817548be4a534d46763b - [libc++][NFC] Remove unnecessary parens in static_asserts (#95605)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#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/set</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/set#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/set</description>
        <pubDate>Wed, 29 May 2024 01:29:11 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>3aba4b5b4fe1634fc6f9919f987ddf1bb5a57813 - [libc++][NFC] Refactor __is_transparent to be a variable template (#90865)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#3aba4b5b4fe1634fc6f9919f987ddf1bb5a57813</link>
        <description>[libc++][NFC] Refactor __is_transparent to be a variable template (#90865)

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Wed, 08 May 2024 08:34:55 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>83bc7b57714dc2f6b33c188f2b95a0025468ba51 - [libc++] Remove _LIBCPP_DISABLE_NODISCARD_EXTENSIONS and refactor the tests (#87094)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#83bc7b57714dc2f6b33c188f2b95a0025468ba51</link>
        <description>[libc++] Remove _LIBCPP_DISABLE_NODISCARD_EXTENSIONS and refactor the tests (#87094)This also adds a few tests that were missing.

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Mon, 22 Apr 2024 20:13:58 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>37dca605c9bd41732da010ee97ed15ad9585a37d - [libc++] Clean up includes of &lt;__assert&gt; (#80091)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#37dca605c9bd41732da010ee97ed15ad9585a37d</link>
        <description>[libc++] Clean up includes of &lt;__assert&gt; (#80091)Originally, we used __libcpp_verbose_abort to handle assertion failures.That function was declared from all public headers. Since we don&apos;t usethat mechanism anymore, we don&apos;t need to declare __libcpp_verbose_abortfrom all public headers, and we can clean up a lot of unnecessaryincludes.This patch also moves the definition of the various assertion categoriesto the &lt;__assert&gt; header, since we now rely on regular IWYU for theseassertion macros.rdar://105510916

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Thu, 29 Feb 2024 15:12:22 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>7b4622514d232ce5f7110dd8b20d90e81127c467 - [libc++] Fix missing and incorrect push/pop macros (#79204)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#7b4622514d232ce5f7110dd8b20d90e81127c467</link>
        <description>[libc++] Fix missing and incorrect push/pop macros (#79204)We recently noticed that the unwrap_iter.h file was pushing macros, butit was pushing them again instead of popping them at the end of thefile. This led to libc++ basically swallowing any custom definition ofthese macros in user code:    #define min HELLO    #include &lt;algorithm&gt;    // min is not HELLO anymore, it&apos;s not definedWhile investigating this issue, I noticed that our push/pop pragmas wereactually entirely wrong too. Indeed, instead of pushing macros like`move`, we&apos;d push `move(int, int)` in the pragma, which is not a validmacro name. As a result, we would not actually push macros like `move`-- instead we&apos;d simply undefine them. This led to the following code notworking:    #define move HELLO    #include &lt;algorithm&gt;    // move is not HELLO anymoreFixing the pragma push/pop incantations led to a cascade of issuesbecause we use identifiers like `move` in a large number of places, andall of these headers would now need to do the push/pop dance.This patch fixes all these issues. First, it adds a check that we don&apos;tswallow important names like min, max, move or refresh as explainedabove. This is done by augmenting the existingsystem_reserved_names.gen.py test to also check that the macros are whatwe expect after including each header.Second, it fixes the push/pop pragmas to work properly and adds missingpragmas to all the files I could detect a failure in via the newly addedtest.rdar://121365472

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Thu, 25 Jan 2024 20:48:46 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>4f215fdd62d3f014750339eab9a46946b6fb1c4a - [libc++][hardening] Categorize more assertions. (#75918)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#4f215fdd62d3f014750339eab9a46946b6fb1c4a</link>
        <description>[libc++][hardening] Categorize more assertions. (#75918)Also introduce `_LIBCPP_ASSERT_PEDANTIC` for assertions violating whichresults in a no-op or other benign behavior, but which may neverthelessindicate a bug in the invoking code.

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Sat, 06 Jan 2024 00:29:23 +0000</pubDate>
        <dc:creator>Konstantin Varlamov &lt;varconsteq@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>9783f28cbb155e4a8d49c12e1c60ce14dcfaf0c7 - [libc++] Format the code base (#74334)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#9783f28cbb155e4a8d49c12e1c60ce14dcfaf0c7</link>
        <description>[libc++] Format the code base (#74334)This patch runs clang-format on all of libcxx/include and libcxx/src, inaccordance with the RFC discussed at [1]. Follow-up patches will formatthe benchmarks, the test suite and remaining parts of the code. I&apos;msplitting this one into its own patch so the diff is a bit easier toreview.This patch was generated with:   find libcxx/include libcxx/src -type f \      | grep -v &apos;module.modulemap.in&apos; \      | grep -v &apos;CMakeLists.txt&apos; \      | grep -v &apos;README.txt&apos; \      | grep -v &apos;libcxx.imp&apos; \      | grep -v &apos;__config_site.in&apos; \      | xargs clang-format -iA Git merge driver is available in libcxx/utils/clang-format-merge-driver.shto help resolve merge and rebase issues across these formatting changes.[1]: https://discourse.llvm.org/t/rfc-clang-formatting-all-of-libc-once-and-for-all

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Mon, 18 Dec 2023 19:01:33 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>77a00c0d546cd4aa8311b5b9031ae9ea8cdb050c - [libc++] Replace uses of _VSTD:: by std:: (#74331)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/set#77a00c0d546cd4aa8311b5b9031ae9ea8cdb050c</link>
        <description>[libc++] Replace uses of _VSTD:: by std:: (#74331)As part of the upcoming clang-formatting of libc++, this patch performsthe long desired removal of the _VSTD macro.See https://discourse.llvm.org/t/rfc-clang-formatting-all-of-libc-once-and-for-allfor the clang-format proposal.

            List of files:
            /llvm-project/libcxx/include/set</description>
        <pubDate>Tue, 05 Dec 2023 16:19:15 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
