<?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 typeinfo</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/source/history/llvm-project/libcxx/include/typeinfo#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/typeinfo</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/source/history/llvm-project/libcxx/include/typeinfo#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/typeinfo</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>e99c4906e44ae3f921fa05356909d006cda8d954 - [libc++] Granularize &lt;cstddef&gt; includes (#108696)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#e99c4906e44ae3f921fa05356909d006cda8d954</link>
        <description>[libc++] Granularize &lt;cstddef&gt; includes (#108696)

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Thu, 31 Oct 2024 01:20:10 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&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/typeinfo#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/typeinfo</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>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/typeinfo#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/typeinfo</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>d6832a611a7c4ec36f08b1cfe9af850dad32da2e - [libc++][modules] Modularize &lt;cstddef&gt; (#107254)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#d6832a611a7c4ec36f08b1cfe9af850dad32da2e</link>
        <description>[libc++][modules] Modularize &lt;cstddef&gt; (#107254)Many headers include `&lt;cstddef&gt;` just for size_t, and pulling inadditional content (e.g. the traits used for std::byte) is unnecessary.To solve this problem, this patch splits up `&lt;cstddef&gt;` intosubcomponents so that headers can include only the parts that theyactually require.This has the added benefit of making the modules build a lot stricterwith respect to IWYU, and also providing a canonical location where wedefine `std::size_t` and friends (which were previously defined inmultiple headers like `&lt;cstddef&gt;` and `&lt;ctime&gt;`).After this patch, there&apos;s still many places in the codebase where weinclude `&lt;cstddef&gt;` when `&lt;__cstddef/size_t.h&gt;` would be sufficient.This patch focuses on removing `&lt;cstddef&gt;` includes from __type_traitsto make these headers non-circular with `&lt;cstddef&gt;`. Additionalrefactorings can be tackled separately.

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Thu, 05 Sep 2024 12:28:33 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>e64e745e8fb802ffb06259b1a5ba3db713a17087 - [libc++][libc++abi] Minor follow-up changes after ptrauth upstreaming (#87481)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#e64e745e8fb802ffb06259b1a5ba3db713a17087</link>
        <description>[libc++][libc++abi] Minor follow-up changes after ptrauth upstreaming (#87481)This patch applies the comments provided on #84573. This is done as aseparate PR to avoid merge conflicts with downstreams that already hadptrauth support.

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Tue, 23 Jul 2024 18:04:54 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>98244c4e2acafb7568e8337088c6caaaffcb7831 - [libc++] Upstream ptrauth support in libc++ and libc++abi (#84573)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#98244c4e2acafb7568e8337088c6caaaffcb7831</link>
        <description>[libc++] Upstream ptrauth support in libc++ and libc++abi (#84573)This is an exact upstreaming of the downstream diff. Minorsimplifications can be made in the future but upstreaming as-is willmake it easier for us to deal with downstream merge conflicts.Partially fixes #83805

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Wed, 03 Apr 2024 12:04:43 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>beeb15b71650b46f39cb6b1917e8d05568978656 - [libc++][NFC] Remove a few unused &lt;__availablity&gt; includes (#86126)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#beeb15b71650b46f39cb6b1917e8d05568978656</link>
        <description>[libc++][NFC] Remove a few unused &lt;__availablity&gt; includes (#86126)

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Tue, 02 Apr 2024 11:52:07 +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/source/history/llvm-project/libcxx/include/typeinfo#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/typeinfo</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>51e91b64d0deb6a743861c2a0fba84865250036e - [libc++abi] Implement __cxa_init_primary_exception and use it to optimize std::make_exception_ptr (#65534)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#51e91b64d0deb6a743861c2a0fba84865250036e</link>
        <description>[libc++abi] Implement __cxa_init_primary_exception and use it to optimize std::make_exception_ptr (#65534)This patch implements __cxa_init_primary_exception, an extension to the Itanium C++ ABI. This extension is already present in both libsupc++ and libcxxrt. This patch also starts making use of this function in std::make_exception_ptr: instead of going through a full throw/catch cycle, we are now able to initialize an exception directly, thus making std::make_exception_ptr around 30x faster.

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Mon, 22 Jan 2024 15:12:41 +0000</pubDate>
        <dc:creator>itrofimow &lt;i.trofimow@yandex.ru&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/typeinfo#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/typeinfo</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>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/typeinfo#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/typeinfo</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>ec350ad418a24f70c88758259c774a1e11c06d74 - [libc++] Remove availability annotations which can never be triggered (#69226)</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#ec350ad418a24f70c88758259c774a1e11c06d74</link>
        <description>[libc++] Remove availability annotations which can never be triggered (#69226)According to https://developer.apple.com/support/xcode/, quite a few ofour availability macros don&apos;t do anything anymore, so we might as wellremove them to clean up the code a bit.

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Wed, 01 Nov 2023 22:56:43 +0000</pubDate>
        <dc:creator>philnik777 &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>70248920fcd804a5825ecf69f24b96a7e340afe6 - [libc++][test] Add &apos;-Wdeprecated-copy&apos;, &apos;-Wdeprecated-copy-dtor&apos; warnings to the test suite</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#70248920fcd804a5825ecf69f24b96a7e340afe6</link>
        <description>[libc++][test] Add &apos;-Wdeprecated-copy&apos;, &apos;-Wdeprecated-copy-dtor&apos; warnings to the test suiteThis is a follow up to https://reviews.llvm.org/D144694.Fixes https://github.com/llvm/llvm-project/issues/60977.Differential Revision: https://reviews.llvm.org/D144775

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Fri, 08 Sep 2023 15:15:53 +0000</pubDate>
        <dc:creator>Igor Zhukov &lt;fsb4000@yandex.ru&gt;</dc:creator>
    </item>
<item>
        <title>f1ea0b11ca03d0f8b5785b7ec92d2eb673eeb4b9 - [libc++] Merge _LIBCPP_FUNC_VIS, _LIBCPP_TYPE_VIS and _LIBCPP_EXCEPTION_ABI into _LIBCPP_EXPORTED_FROM_ABI</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#f1ea0b11ca03d0f8b5785b7ec92d2eb673eeb4b9</link>
        <description>[libc++] Merge _LIBCPP_FUNC_VIS, _LIBCPP_TYPE_VIS and _LIBCPP_EXCEPTION_ABI into _LIBCPP_EXPORTED_FROM_ABIThese macros are always defined identically, so we can simplify the code a bit by merging them.Reviewed By: ldionne, #libcSpies: libcxx-commits, krytarowski, smeenaiDifferential Revision: https://reviews.llvm.org/D152652

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Wed, 14 Jun 2023 17:17:50 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>99941f6308c8f0e913b114539c577d551bac5062 - [libc++][NFC] Fix header guard for &lt;typeinfo&gt;</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#99941f6308c8f0e913b114539c577d551bac5062</link>
        <description>[libc++][NFC] Fix header guard for &lt;typeinfo&gt;

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Thu, 01 Jun 2023 15:06:44 +0000</pubDate>
        <dc:creator>Louis Dionne &lt;ldionne.2@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>83ce139721260d176773d811f576289370f3313c - [libc++] Add hide_from_abi check for classes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#83ce139721260d176773d811f576289370f3313c</link>
        <description>[libc++] Add hide_from_abi check for classesWe already have a clang-tidy check for making sure that `_LIBCPP_HIDE_FROM_ABI` is on free functions. This patch extends this to class members. The places where we don&apos;t check for `_LIBCPP_HIDE_FROM_ABI` are classes for which we have an instantiation in the library.Reviewed By: ldionne, Mordante, #libcSpies: jplehr, mikhail.ramalho, sstefan1, libcxx-commits, krytarowski, miyuki, smeenaiDifferential Revision: https://reviews.llvm.org/D142332

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Mon, 23 Jan 2023 09:27:14 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
<item>
        <title>75196f8e72be3f18c5a831e23f385c4ae3eb62b5 - [libc++] Remove &lt;cstdlib&gt; includes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#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/typeinfo</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>c9d36bd80760db14f14b33789e6cbc6cb8c64830 - [libc++] Granularize &lt;exception&gt; includes</title>
        <link>http://src.rcs.uwaterloo.ca:8080/source/history/llvm-project/libcxx/include/typeinfo#c9d36bd80760db14f14b33789e6cbc6cb8c64830</link>
        <description>[libc++] Granularize &lt;exception&gt; includesReviewed By: ldionne, #libcSpies: mikhail.ramalho, smeenai, libcxx-commitsDifferential Revision: https://reviews.llvm.org/D146097

            List of files:
            /llvm-project/libcxx/include/typeinfo</description>
        <pubDate>Wed, 01 Mar 2023 19:49:22 +0000</pubDate>
        <dc:creator>Nikolas Klauser &lt;nikolasklauser@berlin.de&gt;</dc:creator>
    </item>
</channel>
</rss>
