<?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 valarray</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>de4a57cb - [libc++] Re-add transitive includes that had been removed since LLVM 14</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#de4a57cb</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-15.0.7/libcxx/include/valarray</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>db1978b6 - [libc++] Mark standard-mandated includes as such</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#db1978b6</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-15.0.7/libcxx/include/valarray</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>2ae52326 - [libc++] Towards a simpler extern template story in libc++</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#2ae52326</link>
        <description>[libc++] Towards a simpler extern template story in libc++The flexibility around extern template instantiation declarations inlibc++ result in a very complicated model, especially when support forslightly different configurations (like the debug mode or assertionsin the dylib) are taken into account. That results in unexpected bugslike http://llvm.org/PR50534 (and there have been multiple similarbugs in the past, notably around the debug mode).This patch gets rid of the _LIBCPP_DISABLE_EXTERN_TEMPLATE knob, whichI don&apos;t think is fundamental. Indeed, the motivation for that knob was toavoid taking a dependency on the library, however that can be done betterby linking against the static library instead. And in fact, some parts ofthe headers will always depend on things defined in the library, whichdefeats the original goal of _LIBCPP_DISABLE_EXTERN_TEMPLATE.Differential Revision: https://reviews.llvm.org/D103960

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Tue, 08 Jun 2021 21:25:08 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>b8f6f9e7 - [libc++] Avoid creating temporaries in unary expressions involving valarray</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#b8f6f9e7</link>
        <description>[libc++] Avoid creating temporaries in unary expressions involving valarrayCurrently, unary expressions involving valarray will create a temporary.This leads to dangling references in expressions like `-a * b`, because`-a` is a temporary and the resulting expression will refer to it. Thispatch fixes the problem by creating a lazy expression to perform the unaryoperation instead of eagerly creating a temporary valarray. This ispermitted by the Standard, which does not specify the exact type ofmost expressions involving valarrays.This is technically an ABI break, however I believe the actual potentialfor breakage is very low.rdar://90152242Differential Revision: https://reviews.llvm.org/D125019

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Thu, 05 May 2022 16:24:43 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>a83f4b9c - [libc++] Remove &lt;functional&gt; includes</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#a83f4b9c</link>
        <description>[libc++] Remove &lt;functional&gt; includesReviewed By: var-const, #libc, ldionneSpies: #libc_vendors, ldionne, libcxx-commits, miyukiDifferential Revision: https://reviews.llvm.org/D124123

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Sat, 23 Apr 2022 08:07:24 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>faef447e - [libc++] Granularize &lt;functional&gt; includes</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#faef447e</link>
        <description>[libc++] Granularize &lt;functional&gt; includesReviewed By: Mordante, #libcSpies: libcxx-commits, miyukiDifferential Revision: https://reviews.llvm.org/D123912

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Sun, 17 Apr 2022 14:01:38 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>385cc25a - [libc++] Ensure that all public C++ headers include &lt;__assert&gt;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#385cc25a</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-15.0.7/libcxx/include/valarray</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>48f8a7c4 - [libc++] Make sure calls to std::move are always qualified</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#48f8a7c4</link>
        <description>[libc++] Make sure calls to std::move are always qualifiedThis fixes instances of the newly added `-Wunqualified-std-cast-call`.(Commit 7853371146 removed unqualified `move` from the tests,but these unqualified `move`s remained undetected in the actual headers.)Differential Revision: https://reviews.llvm.org/D120509

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Fri, 25 Feb 2022 00:54:00 +0000</pubDate>
        <dc:creator>Corentin Jabot &lt;corentin.jabot@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>2e2f3158 - [libc++] Granularize algorithm includes</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#2e2f3158</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-15.0.7/libcxx/include/valarray</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>fa6b9e40 - [libc++] Normalize all our &apos;#pragma GCC system_header&apos;, and regression-test.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#fa6b9e40</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-15.0.7/libcxx/include/valarray</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>bd6e6846 - [libc++] Add the version header to all headers.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#bd6e6846</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-15.0.7/libcxx/include/valarray</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>eb8650a7 - [runtimes][NFC] Remove filenames at the top of the license notice</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#eb8650a7</link>
        <description>[runtimes][NFC] Remove filenames at the top of the license noticeWe&apos;ve stopped doing it in libc++ for a while now because these nameswould end up rotting as we move things around and copy/paste stuff.This cleans up all the existing files so as to stop the spreadingas people copy-paste headers around.

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Wed, 17 Nov 2021 21:25:01 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>f9f97cae - [libc++] P0433R2: add the remaining deduction guides.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#f9f97cae</link>
        <description>[libc++] P0433R2: add the remaining deduction guides.Add deduction guides to `valarray` and `scoped_allocator_adaptor`. This largelyfinishes implementation of the paper:* deduction guides for other classes mentioned in the paper were  implemented previously (see the list below);* deduction guides for several classes contained in the proposal  (`reference_wrapper`, `lock_guard`, `scoped_lock`, `unique_lock`,  `shared_lock`) were removed by [LWG2981](https://wg21.link/LWG2981).Also add deduction guides to the synopsis for the few classes (e.g. `pair`)where they were missing.The only part of the paper that isn&apos;t fully implemented after this patch ismaking sure certain deduction guides don&apos;t participate in overload resolutionwhen given incorrect template parameters.List of significant commits implementing the other parts of P0433 (omitting someminor fixes):* [pair](https://github.com/llvm/llvm-project/commit/af65856eec160d163c764faad250d93357be7c83)* [basic_string](https://github.com/llvm/llvm-project/commit/6d9f750dec29e8ae5366092e64cd343dae2c7464)* [array](https://github.com/llvm/llvm-project/commit/0ca8c0895c6034615593c295dd955f29b25bf3d4)* [deque](https://github.com/llvm/llvm-project/commit/dbb6f8a8179b0604e25707b5c1b72be6164f62d9)* [forward_list](https://github.com/llvm/llvm-project/commit/e076700b7786959206acef136ecf05d54078e4e1)* [list](https://github.com/llvm/llvm-project/commit/4a227e582b2f13880ea049b29988a37a0f7c0742)* [vector](https://github.com/llvm/llvm-project/commit/df8f75479278d5ce16eede342ceb5ba2fd71460b)* [queue/stack/priority_queue](https://github.com/llvm/llvm-project/commit/5b8b8b5dce587f1e5a4a31cc24f09b18bd53ff9a)* [basic_regex](https://github.com/llvm/llvm-project/commit/edd5e29cfe9f67ec8e7e0eda12eb05e616fdeebc)* [optional](https://github.com/llvm/llvm-project/commit/f35b4bc3954f3b01051fc0848535ff784809e9e2)* [map/multimap](https://github.com/llvm/llvm-project/commit/edfe8525de1f7278f4754f2bffd47b13ec291a17)* [set/multiset](https://github.com/llvm/llvm-project/commit/e20865c387e09ea0ebd5add15c762cd5271ff65f)* [unordered_set/unordered_multiset](https://github.com/llvm/llvm-project/commit/296a80102a9b72c3eda80558fb78a3ed8849b341)* [unordered_map/unordered_multimap](https://github.com/llvm/llvm-project/commit/dfcd4384cbcac0eeb7e5cbce350f875ba4da79d5)* [function](https://github.com/llvm/llvm-project/commit/e1eabcdfad89f67ae575b0c86aa4a72d277378b4)* [tuple](https://github.com/llvm/llvm-project/commit/1308011e1b5c5382281a63dd4191a1784f8d2295)* [shared_ptr/weak_ptr](https://github.com/llvm/llvm-project/commit/83564056d4b186c9fcf016cdbb388755009f7b5a)Additional notes:* It was revision 2 of the paper that was voted into the Standard.  P0433R3 is a separate paper that is not part of the Standard.* The paper also mandates removing several `make_*_searcher` functions  (e.g. `make_boyer_moore_searcher`) which are currently not implemented  (except in `experimental/`).* The `__cpp_lib_deduction_guides` feature test macro from the paper was  accidentally omitted from the Standard.Differential Revision: https://reviews.llvm.org/D112510

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Thu, 28 Oct 2021 07:36:19 +0000</pubDate>
        <dc:creator>Konstantin Varlamov &lt;varconst@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>b8608b87 - [libc++] Use addressof in assignment operator.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#b8608b87</link>
        <description>[libc++] Use addressof in assignment operator.Replace `&amp;__rhs` with `_VSTD::addressof(__rhs)` to guard against ADL hijackingof `operator&amp;` in `operator=`. Thanks to @CaseyCarter for bringing it to ourattention.Similar issues with hijacking `operator&amp;` still exist, they will beaddressed separately.Reviewed By: #libc, Quuxplusone, ldionneDifferential Revision: https://reviews.llvm.org/D110852

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Tue, 28 Sep 2021 17:15:18 +0000</pubDate>
        <dc:creator>Mark de Wever &lt;koraq@xs4all.nl&gt;</dc:creator>
    </item>
<item>
        <title>469d18c0 - [libc++] Fix result-type and value_type computation in &lt;valarray&gt;.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#469d18c0</link>
        <description>[libc++] Fix result-type and value_type computation in &lt;valarray&gt;.The `operator[]` of `_UnaryOp` and `_BinaryOp` returns the result ofcalling `__op_`, so its return type should be `__result_type`, note.g. `_A0::value_type`. However, `_UnaryOp::value_type` also shouldnever have been `_A0::value_type`; it needs to be the correct typefor the result of the unary op, e.g. `bool` when the op is `logical_not`.This turns out to matter when multiple operators are nested, e.g.`+(v == v)` needs to have a `value_type` of `bool`, not `int`,even when `v` is of type `valarray&lt;int&gt;`.Differential Revision: https://reviews.llvm.org/D103416

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Mon, 31 May 2021 15:33:51 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>d39f5c3c - [libc++] Avoid `result_type` and `unary/binary_function` in &lt;valarray&gt;.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#d39f5c3c</link>
        <description>[libc++] Avoid `result_type` and `unary/binary_function` in &lt;valarray&gt;.Give each of the relevant functional operators a `__result_type`instead, so that we can keep using those typedefs in &lt;valarray&gt;even when the public binder typedefs are removed in C++20.Differential Revision: https://reviews.llvm.org/D103371

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Sat, 29 May 2021 17:09:07 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>bfbd73f8 - [libc++] Alphabetize and include-what-you-use. NFCI.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#bfbd73f8</link>
        <description>[libc++] Alphabetize and include-what-you-use. NFCI.Differential Revision: https://reviews.llvm.org/D102781

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Wed, 19 May 2021 15:57:04 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>4cd6ca10 - [libc++] NFC: Normalize `#endif //` comment indentation</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#4cd6ca10</link>
        <description>[libc++] NFC: Normalize `#endif //` comment indentation

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Tue, 20 Apr 2021 16:03:32 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>be4c657b - [libc++] Consistently replace `::new(__p) T` with `::new ((void*)__p) T`. NFCI.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#be4c657b</link>
        <description>[libc++] Consistently replace `::new(__p) T` with `::new ((void*)__p) T`. NFCI.Everywhere, normalize the whitespace to `::new (EXPR) T`.Everywhere, normalize the spelling of the cast to `(void*)EXPR`.Without the cast to `(void*)`, the expression triggers ADL on GCC.(I think this is a GCC bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98249)Even if it doesn&apos;t trigger ADL, it still seems incorrect to use any argumentthat&apos;s not exactly `(void*)` because that opens the possibility of overloadresolution picking a user-defined overload of `operator new`, which would bewrong.Differential Revision: https://reviews.llvm.org/D93153

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Sat, 12 Dec 2020 01:30:28 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>644f68ed - [libc++] Add slice_array operator= valarray overload.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/valarray#644f68ed</link>
        <description>[libc++] Add slice_array operator= valarray overload.Add the slice_array::operator=(const std::valarray&lt;T&gt;&amp; val_arr) overload.Fixes https://llvm.org/PR40792.Differential Revision: https://reviews.llvm.org/D58735

            List of files:
            /llvm-project-15.0.7/libcxx/include/valarray</description>
        <pubDate>Wed, 02 Dec 2020 18:49:20 +0000</pubDate>
        <dc:creator>zoecarver &lt;z.zoelec2@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
