<?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 random</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/random#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/random</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/random#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/random</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>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/random#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/random</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>37dca605c9bd41732da010ee97ed15ad9585a37d - [libc++] Clean up includes of &lt;__assert&gt; (#80091)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#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/random</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>75196f8e72be3f18c5a831e23f385c4ae3eb62b5 - [libc++] Remove &lt;cstdlib&gt; includes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#75196f8e72be3f18c5a831e23f385c4ae3eb62b5</link>
        <description>[libc++] Remove &lt;cstdlib&gt; includesWe changed the `abort` calls when trying to throw exceptions in `-fno-exceptions` mode to `__verbose_abort` calls, which removes the dependency in most files.Reviewed By: ldionne, #libcSpies: dim, emaste, mikhail.ramalho, smeenai, libcxx-commitsDifferential Revision: https://reviews.llvm.org/D146076

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Sun, 08 Jan 2023 15:47:53 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>eaa4f041f7864d9612ac2167cbe8925b2ea017d1 - [libc++] Use numeric_limits instead of raw INT_MAX</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#eaa4f041f7864d9612ac2167cbe8925b2ea017d1</link>
        <description>[libc++] Use numeric_limits instead of raw INT_MAXThis allows discard_block_engine to work on platforms that might notprovide a full &lt;limits.h&gt; header.Differential Revision: https://reviews.llvm.org/D138212

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Thu, 17 Nov 2022 15:33:08 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>89b356f05ab7aa3d96fc7b68aece6e7a5bdb0db5 - [libc++] Granularize &lt;concept&gt; includes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#89b356f05ab7aa3d96fc7b68aece6e7a5bdb0db5</link>
        <description>[libc++] Granularize &lt;concept&gt; includesReviewed By: ldionne, #libcSpies: libcxx-commitsDifferential Revision: https://reviews.llvm.org/D137283

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Wed, 02 Nov 2022 19:27:42 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>473a1605063421a36b82b31dc5a7e9533d6e229e - [libc++][NFC] Fix some standard-mandated includes comments</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#473a1605063421a36b82b31dc5a7e9533d6e229e</link>
        <description>[libc++][NFC] Fix some standard-mandated includes commentsReviewed By: ldionne, #libcSpies: libcxx-commitsDifferential Revision: https://reviews.llvm.org/D134447

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Thu, 22 Sep 2022 16:05:08 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>24e1736d84fd0fb45097245706a523c3398beb69 - [libc++][random] Removes transitive includes.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#24e1736d84fd0fb45097245706a523c3398beb69</link>
        <description>[libc++][random] Removes transitive includes.It seems these includes are still provided by the sub headers, so it onlyremoves the duplicates.There is no change in the list of includes, but the change affects themodular build. By not having the includes in the top-level header themodule map has changed. This uncovers missing includes in the testsand missing exports in the module map. This causes the huge amount ofchanges in the patch.Reviewed By: #libc, ldionneDifferential Revision: https://reviews.llvm.org/D133252

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Sat, 03 Sep 2022 11:37:09 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>e31c2a1b1a643861f25ba0145cb4701c999fc6c2 - [NFC][libc++] Moves transitive includes location.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#e31c2a1b1a643861f25ba0145cb4701c999fc6c2</link>
        <description>[NFC][libc++] Moves transitive includes location.As discussed in D132284 they will be moved to the end.Reviewed By: #libc, MordanteDifferential Revision: https://reviews.llvm.org/D133212

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Fri, 02 Sep 2022 15:53:28 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>8ff2d6af6906261567d8c10be62711ce899fb485 - [libc++] Reduces the number of transitive includes.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#8ff2d6af6906261567d8c10be62711ce899fb485</link>
        <description>[libc++] Reduces the number of transitive includes.This defines a new policy for removal of transitive includes.The goal of the policy it to make it relatively easy to removeheaders when needed, but avoid breaking developers using andvendors shipping libc++.The method used is to guard transitive includes based on theC++ language version. For the upcoming C++23 we can removeheaders when we want, but for other language versions we tryto keep it to a minimum.In this code the transitive include of `&lt;chrono&gt;` is removedsince D128577 introduces a header cycle between `&lt;format&gt;`and `&lt;chrono&gt;`. This cycle is indirectly required by theStandard. Our cycle dependency tool basically is a grep basedtool, so it needs some hints to ignore cycles. With the inputof our transitive include tests we can create a better tool.However that&apos;s out of the scope of this patch.Note the flag `_LIBCPP_REMOVE_TRANSITIVE_INCLUDES` remainsunchanged. So users can still opt-out of transitives includesentirely.Reviewed By: #libc, ldionne, philnikDifferential Revision: https://reviews.llvm.org/D132284

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Sat, 20 Aug 2022 08:34:26 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>de4a57cb21a19179d7be830967e642b868a05a91 - [libc++] Re-add transitive includes that had been removed since LLVM 14</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#de4a57cb21a19179d7be830967e642b868a05a91</link>
        <description>[libc++] Re-add transitive includes that had been removed since LLVM 14This commit re-adds transitive includes that had been removed by4cd04d1687f1, c36870c8e79c, a83f4b9cda57, 1458458b558d, 2e2f3158c604,and 489637e66dd3. This should cover almost all the includes that hadbeen removed since LLVM 14 and that would contribute to breaking usercode when releasing LLVM 15.It is possible to disable the inclusion of these headers by defining_LIBCPP_REMOVE_TRANSITIVE_INCLUDES. The intent is that vendors willenable that macro and start fixing downstream issues immediately. Wecan then remove the macro (and the transitive includes) by default ina future release. That way, we will break users only once by removingtransitive includes in bulk instead of doing it bit by bit a everyrelease, which is more disruptive for users.Note 1: The set of headers to re-add was found by re-generating the        transitive include test on a checkout of release/14.x, which        provided the list of all transitive includes we used to provide.Note 2: Several includes of &lt;vector&gt;, &lt;optional&gt;, &lt;array&gt; and &lt;unordered_map&gt;        have been added in this commit. These transitive inclusions were        added when we implemented boyer_moore_searcher in &lt;functional&gt;.Note 3: This is a best effort patch to try and resolve downstream breakage        caused since branching LLVM 14. I wasn&apos;t able to perfectly mirror        transitive includes in LLVM 14 for a few headers, so I added a        release note explaining it. To summarize, adding boyer_moore_searcher        created a bunch of circular dependencies, so we have to break        backwards compatibility in a few cases.Differential Revision: https://reviews.llvm.org/D128661

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Mon, 27 Jun 2022 19:53:41 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>db1978b67431ca3462ad8935bf662c15750b8252 - [libc++] Mark standard-mandated includes as such</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#db1978b67431ca3462ad8935bf662c15750b8252</link>
        <description>[libc++] Mark standard-mandated includes as suchReviewed By: ldionne, Mordante, #libc, saugustineSpies: saugustine, MaskRay, arichardson, mstorsjo, jloser, libcxx-commits, arphamanDifferential Revision: https://reviews.llvm.org/D127953

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Thu, 16 Jun 2022 20:43:46 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>385cc25a531a72c393cee44689e2c3194615bcec - [libc++] Ensure that all public C++ headers include &lt;__assert&gt;</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#385cc25a531a72c393cee44689e2c3194615bcec</link>
        <description>[libc++] Ensure that all public C++ headers include &lt;__assert&gt;This patch changes the requirement for getting the declaration of theassertion handler from including &lt;__assert&gt; to including any publicC++ header of the library. Note that C compatibility headers areexcluded because we don&apos;t implement all the C headers ourselves --some of them are taken straight from the C library, like assert.h.It also adds a generated test to check it. Furthermore, this newgenerated test is designed in a way that will make it possible toreplace almost all the existing test-generation scripts with thissystem in upcoming patches.Differential Revision: https://reviews.llvm.org/D122506

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Fri, 25 Mar 2022 16:55:36 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>a3255f219a861fd91423def693e1b3ab3e012bec - [libc++] Explicitly reject `uniform_int_distribution&lt;bool&gt;` and `&lt;char&gt;`.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#a3255f219a861fd91423def693e1b3ab3e012bec</link>
        <description>[libc++] Explicitly reject `uniform_int_distribution&lt;bool&gt;` and `&lt;char&gt;`.`uniform_int_distribution&lt;T&gt;` is UB unless `T` is one of the non-character,non-boolean integer types (`short` or larger). However, libc++ has neverenforced this. D114129 accidentally made `uniform_int_distribution&lt;bool&gt;`into an error. Make it now *intentionally* an error; and likewise for thecharacter types and all user-defined class and enum types; but permit`__[u]int128_t` to continue working.Apply the same static_assert to all the integer distributions.Differential Revision: https://reviews.llvm.org/D114920

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Thu, 02 Dec 2021 00:55:26 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>2e2f3158c604adb8401a2a44a03f58d4b6f1c7f9 - [libc++] Granularize algorithm includes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#2e2f3158c604adb8401a2a44a03f58d4b6f1c7f9</link>
        <description>[libc++] Granularize algorithm includesReviewed By: Mordante, ldionne, Quuxplusone, #libc, #libc_abiSpies: #libc_vendors, libcxx-commits, miyukiDifferential Revision: https://reviews.llvm.org/D119667

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Tue, 15 Feb 2022 17:18:08 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>fa6b9e401085c0a210daf81ae79af6dd0144f129 - [libc++] Normalize all our &apos;#pragma GCC system_header&apos;, and regression-test.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#fa6b9e401085c0a210daf81ae79af6dd0144f129</link>
        <description>[libc++] Normalize all our &apos;#pragma GCC system_header&apos;, and regression-test.Now we&apos;ll notice if a header forgets to include this magic phrase.Differential Revision: https://reviews.llvm.org/D118800

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Wed, 02 Feb 2022 01:16:40 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>bd6e6846e7f431e9d84b1f257d4a0c8ddeac4fe2 - [libc++] Add the version header to all headers.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#bd6e6846e7f431e9d84b1f257d4a0c8ddeac4fe2</link>
        <description>[libc++] Add the version header to all headers.Some headers which require the version header depend on other headers toprovide it. Include the version header in all top-level headers to makesure a header cleanup can&apos;t remove the version header.Note this doesn&apos;t add the version header to the c headers.Reviewed By: #libc, Quuxplusone, ldionneDifferential Revision: https://reviews.llvm.org/D116172

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Wed, 22 Dec 2021 17:14:14 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>81eda008e952e6b46d20b97f7fbfd6f2e69bd3a1 - [libc++] Extract __clamp_to_integral to its own header</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#81eda008e952e6b46d20b97f7fbfd6f2e69bd3a1</link>
        <description>[libc++] Extract __clamp_to_integral to its own headerIn addition to being more consistent with our approach for helpers, thissolves an actual issue where &lt;cmath&gt; was using numeric_limits but neverincluding the &lt;limits&gt; header directly. In a normal setup, this is notan issue because the &lt;math.h&gt; header included by &lt;cmath&gt; does include&lt;limits&gt;. However, I did stumble upon some code where that didn&apos;t work,most likely because they were placing their own &lt;math.h&gt; header in frontof ours. I didn&apos;t bother investigating further.Differential Revision: https://reviews.llvm.org/D115282

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Tue, 07 Dec 2021 21:34:13 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>344cef6695e9af05ed9fa5bb96b3a475c7a4df4b - [libc++] Granularize the &lt;random&gt; header. NFCI.</title>
        <link>http://src.rcs.uwaterloo.ca:8080/history/llvm-project/libcxx/include/random#344cef6695e9af05ed9fa5bb96b3a475c7a4df4b</link>
        <description>[libc++] Granularize the &lt;random&gt; header. NFCI.Actually there&apos;s one functional change here, which is that users canno longer depend on &lt;random&gt; to include all of C++20 &lt;concepts&gt;. Thatinclusion is so new that we believe nobody should be depending on ityet, even in the presence of Hyrum&apos;s Law. We keep the includes of &lt;vector&gt;,&lt;algorithm&gt;, etc., so as not to break pre-C++20 Hyrum&apos;s Law users.Differential Revision: https://reviews.llvm.org/D114281

            List of files:
            /llvm-project/libcxx/include/random</description>
        <pubDate>Fri, 19 Nov 2021 19:58:51 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
