<?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 __tree</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>0fa05456a8dc468961c33bd8149b157194672c71 - [libc++] Define an internal API for std::invoke and friends (#116637)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#0fa05456a8dc468961c33bd8149b157194672c71</link>
        <description>[libc++] Define an internal API for std::invoke and friends (#116637)Currently we&apos;re using quite different internal names for the`std::invoke` family of type traits. This adds a layer around thecurrent implementation to make it easier to understand when it is usedand makes it easier to define multiple implementations of it.

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Mon, 20 Jan 2025 17:00:15 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>b905bcc5090cde734e8b7bbceae13bd5a606cc14 - [libc++] Remove some unused includes (#120219)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#b905bcc5090cde734e8b7bbceae13bd5a606cc14</link>
        <description>[libc++] Remove some unused includes (#120219)

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Wed, 18 Dec 2024 20:10:27 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&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/__tree#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/__tree</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>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/__tree#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/__tree</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/__tree#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/__tree</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>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/__tree#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/__tree</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/__tree#bbe4a80605619dcb819ccfee016cf1355fb00af2</link>
        <description>[libc++] Enable modernize-use-equals-delete (#93293)Differential Revision: https://reviews.llvm.org/D121213

            List of files:
            /llvm-project/libcxx/include/__tree</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/__tree#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/__tree</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>580f60484e193b4f7f853ea34cc35f4a3240dfa7 - [libc++][NFC] Merge is{,_nothrow,_trivially}{,_copy,_move,_default}{_assignable,_constructible} (#85308)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#580f60484e193b4f7f853ea34cc35f4a3240dfa7</link>
        <description>[libc++][NFC] Merge is{,_nothrow,_trivially}{,_copy,_move,_default}{_assignable,_constructible} (#85308)These headers have become very small by using compiler builtins, oftencontaining only two declarations. This merges these headers, sincethere doesn&apos;t seem to be much of a benefit keeping them separate.Specifically, `is_{,_nothrow,_trivially}{assignable,constructible}` arekept and the `copy`, `move` and `default` versions of these type traitsare moved in to the respective headers.

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Mon, 18 Mar 2024 07:29:44 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>76a247271507f009a186e81c7f90076ffb043ec3 - [libc++] Refactor more __enable_ifs to the canonical style (#81457)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#76a247271507f009a186e81c7f90076ffb043ec3</link>
        <description>[libc++] Refactor more __enable_ifs to the canonical style (#81457)This brings the code base closer to having only a single style of`enable_if`s.

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Tue, 20 Feb 2024 00:47:38 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&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/__tree#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/__tree</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/__tree#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/__tree</description>
        <pubDate>Tue, 05 Dec 2023 16:19:15 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>4c198542226223f6a5c5511a1f89b37d15ee10b9 - [libc++] Rename _LIBCPP_INLINE_VISIBILITY to _LIBCPP_HIDE_FROM_ABI (#74095)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#4c198542226223f6a5c5511a1f89b37d15ee10b9</link>
        <description>[libc++] Rename _LIBCPP_INLINE_VISIBILITY to _LIBCPP_HIDE_FROM_ABI (#74095)In preparation for running clang-format on the whole code base, we arealso removing mentions of the legacy _LIBCPP_INLINE_VISIBILITY macro infavor of the newer _LIBCPP_HIDE_FROM_ABI.We&apos;re still leaving the definition of _LIBCPP_INLINE_VISIBILITY to avoidcreating needless breakage in case some older patches are checked-inwith mentions of the old macro. After we branch for LLVM 18, we can doanother pass to clean up remaining uses of the macro that might havegotten introduced by mistake (if any) and remove the macro itself at thesame time. This is just a minor convenience to smooth out the transitionas much as possible.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/__tree</description>
        <pubDate>Mon, 04 Dec 2023 15:25:14 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>a65070a76a7c823c28f1c95a21e4857ed6e123ef - [libc++] Remove a few transitive includes (#70553)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#a65070a76a7c823c28f1c95a21e4857ed6e123ef</link>
        <description>[libc++] Remove a few transitive includes (#70553)

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Sun, 29 Oct 2023 17:31:37 +0000</pubDate>
        <dc:creator>philnik777 &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>ba79fb2e1ff7130cde02fbbd325f0f96f8a522ca - [libc++] Re-apply &quot;Remove UB in list, forward_list and __hash_table&quot;</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#ba79fb2e1ff7130cde02fbbd325f0f96f8a522ca</link>
        <description>[libc++] Re-apply &quot;Remove UB in list, forward_list and __hash_table&quot;This patch removes undefined behavior in list and forward_list and __hash_tablecaused by improperly beginning and ending the lifetime of the various nodeclasses. It allows removing the _LIBCPP_STANDALONE_DEBUG macro fromthese node types since we now properly begin and end their lifetime,meaning that we won&apos;t trip up constructor homing.See https://reviews.llvm.org/D98750 for more information on what promptedthis patch.This commit re-applies 0687e4d9f310, which had been reverted in b935882bdce7because it broke the LLDB build. LLDB folks tell me I can go ahead andre-commit this now.Differential Revision: https://reviews.llvm.org/D101206Co-authored-by: Amy Kwan &lt;amy.kwan1@ibm.com&gt;

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Fri, 13 Oct 2023 03:13:08 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>b935882bdce77fc7efcc5f6d615282d1b00f8253 - Revert &quot;[libc++] Remove UB in list, forward_list and __hash_table&quot;</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#b935882bdce77fc7efcc5f6d615282d1b00f8253</link>
        <description>Revert &quot;[libc++] Remove UB in list, forward_list and __hash_table&quot;This reverts commit 0687e4d9f310249a45c3799ec66aeeeb0efda9f7.Causes LLDB failures: https://reviews.llvm.org/D101206#4653253

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Fri, 06 Oct 2023 10:09:36 +0000</pubDate>
        <dc:creator>Krasimir Georgiev &lt;krasimir@google.com&gt;</dc:creator>
    </item>
<item>
        <title>0687e4d9f310249a45c3799ec66aeeeb0efda9f7 - [libc++] Remove UB in list, forward_list and __hash_table</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#0687e4d9f310249a45c3799ec66aeeeb0efda9f7</link>
        <description>[libc++] Remove UB in list, forward_list and __hash_tableThis patch removes undefined behavior in list and forward_list and __hash_tablecaused by improperly beginning and ending the lifetime of the various nodeclasses. It allows removing the _LIBCPP_STANDALONE_DEBUG macro fromthese node types since we now properly begin and end their lifetime,meaning that we won&apos;t trip up constructor homing.See https://reviews.llvm.org/D98750 for more information on what promptedthis patch.Differential Revision: https://reviews.llvm.org/D101206Co-authored-by: Amy Kwan &lt;amy.kwan1@ibm.com&gt;

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Thu, 07 Sep 2023 13:59:57 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>9f3e3efd98a29eb8df9e3ad43a573c9141d1ace2 - [libc++][NFC] Refactor __enable_if return types to defaulted template parameters</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#9f3e3efd98a29eb8df9e3ad43a573c9141d1ace2</link>
        <description>[libc++][NFC] Refactor __enable_if return types to defaulted template parametersThis brings most of the enable_ifs in libc++ to the same style. It also has the nice side-effect of reducing the size of names of these symbols, since the depedent return type is shorter.Reviewed By: #libc, ldionneSpies: ldionne, libcxx-commitsDifferential Revision: https://reviews.llvm.org/D157787

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Sat, 02 Sep 2023 00:52:02 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>4a652e4a996ff529f6da24097698dc679fd414df - [libc++][hardening] Categorize more assertions.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#4a652e4a996ff529f6da24097698dc679fd414df</link>
        <description>[libc++][hardening] Categorize more assertions.Differential Revision: https://reviews.llvm.org/D155873

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Mon, 24 Jul 2023 21:56:44 +0000</pubDate>
        <dc:creator>varconst &lt;varconsteq@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>4122db1fbdeb7a9c5a7c8f0cd7afedd53754eaad - [libc++][hardening] Categorize most assertions inside the container classes.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/__tree#4122db1fbdeb7a9c5a7c8f0cd7afedd53754eaad</link>
        <description>[libc++][hardening] Categorize most assertions inside the container classes.This introduces:- `_LIBCPP_ASSERT_VALID_INPUT_RANGE`;- `_LIBCPP_ASSERT_VALID_CONTAINER_ACCESS`;- `_LIBCPP_ASSERT_VALID_ITERATOR_ACCESS`;- `_LIBCPP_ASSERT_VALID_ALLOCATOR`;- `_LIBCPP_ASSERT_INTERNAL`.Differential Revision: https://reviews.llvm.org/D155349

            List of files:
            /llvm-project/libcxx/include/__tree</description>
        <pubDate>Thu, 20 Jul 2023 17:13:54 +0000</pubDate>
        <dc:creator>varconst &lt;varconsteq@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
