<?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 future</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>3d08fa25824cafc748086d06e0b51b7f0f334b8e - [libc++] Another _LIBCPP_NODEBUG fix</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#3d08fa25824cafc748086d06e0b51b7f0f334b8e</link>
        <description>[libc++] Another _LIBCPP_NODEBUG fix

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Mon, 20 Jan 2025 19:15:50 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<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/future#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/future</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>019a902ac644c59dfa8e6091f96846b516444ca5 - [libc++] Deprecate extension `packaged_task::result_type` (#122600)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#019a902ac644c59dfa8e6091f96846b516444ca5</link>
        <description>[libc++] Deprecate extension `packaged_task::result_type` (#122600)This extension is questionable and non-conforming. Perhaps we shoulddeprecate and then remove it.Towards #112856.

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Mon, 13 Jan 2025 14:12:25 +0000</pubDate>
        <dc:creator>A. Jiang &lt;de34@live.cn&gt;</dc:creator>
    </item>
<item>
        <title>dab6463e748aed1223487da536075cbff192940b - [libc++] Remove duplicated _LIBCPP_HIDE_FROM_ABI from a few declarations (#122323)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#dab6463e748aed1223487da536075cbff192940b</link>
        <description>[libc++] Remove duplicated _LIBCPP_HIDE_FROM_ABI from a few declarations (#122323)

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Fri, 10 Jan 2025 16:42:42 +0000</pubDate>
        <dc:creator>LoS &lt;kaffedesk@gmail.com&gt;</dc:creator>
    </item>
<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/future#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/future</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>59890c13343af9e308281b3c76bac425087f4f8a - [libc++] Granularize &lt;new&gt; includes (#119964)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#59890c13343af9e308281b3c76bac425087f4f8a</link>
        <description>[libc++] Granularize &lt;new&gt; includes (#119964)

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Tue, 17 Dec 2024 10:29:16 +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/future#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/future</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/future#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/future</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>4a8329cd7d038d8cdfa9b4cc784ab0e402ecb774 - [libc++] Granularize &lt;mutex&gt; includes (#117068)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#4a8329cd7d038d8cdfa9b4cc784ab0e402ecb774</link>
        <description>[libc++] Granularize &lt;mutex&gt; includes (#117068)

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Sat, 23 Nov 2024 11:21:23 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>85ef9666c892d5e11fce3a0b84e4eaf4603256ee - [libc++] Avoid including all of &lt;thread&gt; in &lt;future&gt; (#116541)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#85ef9666c892d5e11fce3a0b84e4eaf4603256ee</link>
        <description>[libc++] Avoid including all of &lt;thread&gt; in &lt;future&gt; (#116541)

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Mon, 18 Nov 2024 19:04:05 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>67b81e2120697b90f7c6595b73eb5fc94f437320 - [libc++] Split __shared_count out of &lt;__memory/shared_ptr.h&gt; (#115943)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#67b81e2120697b90f7c6595b73eb5fc94f437320</link>
        <description>[libc++] Split __shared_count out of &lt;__memory/shared_ptr.h&gt; (#115943)`__shared_count` is used in a few places where `shared_ptr` isn&apos;t. Thisavoids a bunch of transitive includes needed for the implementation of`shared_ptr` in these places.

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Wed, 13 Nov 2024 11:14:02 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&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/future#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/future</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>8ce0fb86d3acc066a16637ea5c5691da984707a7 - [libc++][NFC] Reduce use of `__add_lvalue_reference_t` (#112497)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#8ce0fb86d3acc066a16637ea5c5691da984707a7</link>
        <description>[libc++][NFC] Reduce use of `__add_lvalue_reference_t` (#112497)Currently, the occurrences of `__add_lvalue_reference_t` in`__split_buffer` and `__assoc_state` are probably meaningless.* In `__split_buffer`, the `__alloc_ref` and `__alloc_const_ref` member  typedefs are no longer used.* In `__assoc_state`, we should simply use `_Rp&amp;`, which must be  well-formed since it&apos;s already required that `sizeof(_Rp)` is  well-formed.This PR removes the meaningless usages. The remaining occurrences in`shared_ptr`, `unique_ptr`, and several type traits are meaningful.

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Wed, 16 Oct 2024 13:32:02 +0000</pubDate>
        <dc:creator>A. Jiang &lt;de34@live.cn&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/future#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/future</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>09e3a360581dc36d0820d3fb6da9bd7cfed87b5d - [libc++][modules] Fix missing and incorrect includes (#108850)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#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/future</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>27c83382d83dce0f33ae67abb3bc94977cb3031f - [libc++] Replace `__compressed_pair` with `[[no_unique_address]]` (#76756)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#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/future</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/future#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/future</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>3a0ef2a2d3113d162d0133d7384df52abb2e3d92 - [libc++] Reland LWG2921 and LWG2976 (#107960)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#3a0ef2a2d3113d162d0133d7384df52abb2e3d92</link>
        <description>[libc++] Reland LWG2921 and LWG2976 (#107960)They were originally implemented in d42db7e083ee0 but reverted later ina2f3c63282330be0.This PR implement both LWG issues again, guarding the removed functionswith `_LIBCPP_STD_VER &lt;= 14`, because they should be treated as patches for P0302R1 which was adopted for C++17.Fixes #103598Fixes #103755

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Wed, 11 Sep 2024 21:46:59 +0000</pubDate>
        <dc:creator>A. Jiang &lt;de34@live.cn&gt;</dc:creator>
    </item>
<item>
        <title>748023dc3210533df2c1c6efc8af1b5954493701 - [libc++][NFC] Replace _LIBCPP_NORETURN and TEST_NORETURN with [[noreturn]] (#80455)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#748023dc3210533df2c1c6efc8af1b5954493701</link>
        <description>[libc++][NFC] Replace _LIBCPP_NORETURN and TEST_NORETURN with [[noreturn]] (#80455)`[[__noreturn__]]` is now always available, so we can simply use theattribute directly instead of through a macro.

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Wed, 11 Sep 2024 06:59:46 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>eb0f12188a3afa10ba353a32328577dc0d898524 - [libc++][modules] Tweak a few includes (#107467)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/future#eb0f12188a3afa10ba353a32328577dc0d898524</link>
        <description>[libc++][modules] Tweak a few includes (#107467)Add a few missing includes, remove two unnecessary ones and use__cstddef/size_t.h instead of &lt;cstddef&gt; in a few places. This is acollection of miscellaneous findings that collectively unblock othermodularization patches.

            List of files:
            /llvm-project/libcxx/include/future</description>
        <pubDate>Fri, 06 Sep 2024 16:10:04 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
