<?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 cmath</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>b48c5010 - [libc++] Make parameter names consistent and enforce the naming style using readability-identifier-naming</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#b48c5010</link>
        <description>[libc++] Make parameter names consistent and enforce the naming style using readability-identifier-namingEnsure that parameter names have the style `__lower_case`Reviewed By: ldionne, #libcSpies: aheejin, sstefan1, libcxx-commits, miyukiDifferential Revision: https://reviews.llvm.org/D129051

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Fri, 08 Jul 2022 16:17:26 +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/cmath#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/cmath</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>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/cmath#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/cmath</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>4d81a46f - [libc++] Alphabetize header #includes. NFCI.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#4d81a46f</link>
        <description>[libc++] Alphabetize header #includes. NFCI.The NFC part of D116809. We still want to enforce this in CI,but the mechanism for that is still to-be-determined.Differential Revision: https://reviews.llvm.org/D116809

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Fri, 07 Jan 2022 14:45:05 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>004ebe22 - [libc++] Add missing templated version of `std::lerp`.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#004ebe22</link>
        <description>[libc++] Add missing templated version of `std::lerp`.Fixes #50806.Differential Revision: https://reviews.llvm.org/D116295

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Mon, 27 Dec 2021 03:16:45 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>81eda008 - [libc++] Extract __clamp_to_integral to its own header</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#81eda008</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-15.0.7/libcxx/include/cmath</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>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/cmath#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/cmath</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>4e0ea2cf - [libc++] Use enable_if_t instead of _EnableIf</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#4e0ea2cf</link>
        <description>[libc++] Use enable_if_t instead of _EnableIfI just ran into a compiler error involving __bind_back and some overloadsthat were being disabled with _EnableIf. I noticed that the error messagewas quite bad and did not mention the reason for the overload beingexcluded. Specifically, the error looked like this:     candidate template ignored: substitution failure [with _Args =     &lt;ContiguousView&gt;]: no member named &apos;_EnableIfImpl&apos; in &apos;std::_MetaBase&lt;false&gt;&apos;Instead, when using enable_if or enable_if_t, the compiler is clever andcan produce better diagnostics, like so:     candidate template ignored: requirement &apos;is_invocable_v&lt;          std::__bind_back_op&lt;1, std::integer_sequence&lt;unsigned long, 0&gt;&gt;,          std::ranges::views::__transform::__fn &amp;, std::tuple&lt;PlusOne&gt; &amp;,          ContiguousView&gt;&apos; was not satisfied [with _Args = &lt;ContiguousView&gt;]Basically, it tries to do a poor man&apos;s implementation of concepts, whichis already a lot better than simply complaining about substitution failure.Hence, this commit uses enable_if_t instead of _EnableIf wheneverpossible. That is both more straightforward than using the internalhelper, and also leads to better error messages in those cases.I understand the motivation for _EnableIf&apos;s implementation was to improvecompile-time performance, however I believe striving to improve errormessages is even more important for our QOI, hence this patch. Furthermore,it is unclear that _EnableIf actually improved compile-time performancein any noticeable way (see discussion in the review for details).Differential Revision: https://reviews.llvm.org/D108216

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Tue, 17 Aug 2021 16:26:09 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>2e4755ff - [libc++] Fix a few warnings in system headers with GCC</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#2e4755ff</link>
        <description>[libc++] Fix a few warnings in system headers with GCCThis isn&apos;t fixing all of them, but at least it&apos;s making some progress.Differential Revision: https://reviews.llvm.org/D106283

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Tue, 27 Jul 2021 21:30:47 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>a9c9183c - [libc++] Use the using_if_exists attribute when provided</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#a9c9183c</link>
        <description>[libc++] Use the using_if_exists attribute when providedAs discussed on cfe-dev [1], use the using_if_exists Clang attribute whenthe compiler supports it. This makes it easier to port libc++ on top ofnew platforms that don&apos;t fully support the C Standard library.Previously, libc++ would fail to build when trying to import a missingdeclaration in a &lt;cXXXX&gt; header. With the attribute, the declaration willsimply not be imported into namespace std, and hence it won&apos;t be availablefor libc++ to use. In many cases, the declarations were *not* actuallyrequired for libc++ to work (they were only surfaced for users to usethem as std::XXXX), so not importing them into namespace std is acceptable.The same thing could be achieved by conscious usage of `#ifdef` alongwith platform detection, however that quickly creates a maintenanceproblem as libc++ is ported to new platforms. Furthermore, this problemis exacerbated when mixed with vendor internal-only platforms, which canlead to difficulties maintaining a downstream fork of the library.For the time being, we only use the using_if_exists attribute when itis supported. At some point in the future, we will start removing #ifdefpaths that are unnecessary when the attribute is supported, and folkswho need those #ifdef paths will be required to use a compiler thatsupports the attribute.[1]: http://lists.llvm.org/pipermail/cfe-dev/2020-June/066038.htmlDifferential Revision: https://reviews.llvm.org/D90257

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Wed, 02 Jun 2021 14:41:37 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@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/cmath#4cd6ca10</link>
        <description>[libc++] NFC: Normalize `#endif //` comment indentation

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</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>863d5c4e - [libc++] Remove hard tabs, U+00AD, and U+200B from all libc++ headers. NFCI.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#863d5c4e</link>
        <description>[libc++] Remove hard tabs, U+00AD, and U+200B from all libc++ headers. NFCI.

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Sat, 17 Apr 2021 21:03:20 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>f3d7536b - [libc++] Fix abs and div overload issue for compilers on AIX</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#f3d7536b</link>
        <description>[libc++] Fix abs and div overload issue for compilers on AIXSummary:AIX system&apos;s stdlib.h provide different overload of abs and divdepending on compiler versions.For example, std::div(long, long) and std::abs(long) are not availablefrom OS&apos;s stdlib.h when building with clang, but they are availablewhen building with xlclang compiler.Therefore, we need to provide those extra overloads in libc++&apos;s stdlib.hwhen OS&apos;s stdlib.h does not.Differential Revision: https://reviews.llvm.org/D99767

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Thu, 08 Apr 2021 21:48:42 +0000</pubDate>
        <dc:creator>jasonliu &lt;jasonliu.development@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>d586f92c - [libc++] Consistently replace `std::` qualification with `_VSTD::` or nothing. NFCI.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#d586f92c</link>
        <description>[libc++] Consistently replace `std::` qualification with `_VSTD::` or nothing. NFCI.I used a lot of `git grep` to find places where `std::` was being usedoutside of comments and assert-messages. There were three outcomes:- Qualified function calls, e.g. `std::move` becomes `_VSTD::move`.    This is the most common case.- Typenames that don&apos;t need qualification, e.g. `std::allocator` becomes `allocator`.    Leaving these as `_VSTD::allocator` would also be fine, but I decided    that removing the qualification is more consistent with existing practice.- Names that specifically need un-versioned `std::` qualification,    or that I wasn&apos;t sure about. For example, I didn&apos;t touch any code in    &lt;atomic&gt;, &lt;math.h&gt;, &lt;new&gt;, or any ext/ or experimental/ headers;    and I didn&apos;t touch any instances of `std::type_info`.In some deduction guides, we were accidentally using `class Alloc = typename std::allocator&lt;T&gt;`,despite `std::allocator&lt;T&gt;`&apos;s type-ness not being template-dependent.Because `std::allocator` is a qualified name, this did parse as we intended;but what we meant was simply `class Alloc = allocator&lt;T&gt;`.Differential Revision: https://reviews.llvm.org/D92250

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Fri, 27 Nov 2020 16:02:06 +0000</pubDate>
        <dc:creator>Arthur O&apos;Dwyer &lt;arthur.j.odwyer@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>d1dbda10 - [libc++] [LWG3201] Update status page: lerp should be marked noexcept.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#d1dbda10</link>
        <description>[libc++] [LWG3201] Update status page: lerp should be marked noexcept.Summary: Update status page and test synopsis. Add synopsis in &lt;cmath&gt;.Reviewed By: ldionne, #libcDifferential Revision: https://reviews.llvm.org/D80456

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Mon, 25 May 2020 20:26:50 +0000</pubDate>
        <dc:creator>Marek Kurdej &lt;marek@quasardb.net&gt;</dc:creator>
    </item>
<item>
        <title>371ea70b - [libc++] Harden usage of static_assert against C++03</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#371ea70b</link>
        <description>[libc++] Harden usage of static_assert against C++03In C++03, we emulate static_assert with a macro, and we must parenthesizemultiple arguments.llvm-svn: 373328

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Tue, 01 Oct 2019 12:12:21 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>b92deded - [libc++] Move __clamp_to_integral to &lt;cmath&gt;, and harden against min()/max() macros</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#b92deded</link>
        <description>[libc++] Move __clamp_to_integral to &lt;cmath&gt;, and harden against min()/max() macrosllvm-svn: 370900

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Wed, 04 Sep 2019 13:35:03 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>3359a17b - Apply new meta-programming traits throughout the library.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#3359a17b</link>
        <description>Apply new meta-programming traits throughout the library.The new meta-programming primitives are lower cost than the old versions. This patch removes those old versions and switches libc++ to use the new ones.llvm-svn: 364160

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Sun, 23 Jun 2019 20:28:29 +0000</pubDate>
        <dc:creator>Eric Fiselier &lt;eric@efcs.ca&gt;</dc:creator>
    </item>
<item>
        <title>ac6843ce - Remove unneeded &lt;algorithm&gt; include in cmath.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#ac6843ce</link>
        <description>Remove unneeded &lt;algorithm&gt; include in cmath.It&apos;s a remnant from an earlier version of the lerp changeand is unneeded.llvm-svn: 360098

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Mon, 06 May 2019 23:14:31 +0000</pubDate>
        <dc:creator>Eric Fiselier &lt;eric@efcs.ca&gt;</dc:creator>
    </item>
<item>
        <title>b0e2daf6 - Implement &apos;lerp&apos;; which is the last bit of P0811. Mark that paper as complete.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/libcxx/include/cmath#b0e2daf6</link>
        <description>Implement &apos;lerp&apos;; which is the last bit of P0811. Mark that paper as complete.llvm-svn: 359211

            List of files:
            /llvm-project-15.0.7/libcxx/include/cmath</description>
        <pubDate>Thu, 25 Apr 2019 17:44:18 +0000</pubDate>
        <dc:creator>Marshall Clow &lt;mclow.lists@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
