mirror-llvm-project/third-party
Aaron Ballman df1d786c46
[C2y] Support WG14 N3457, the __COUNTER__ macro (#162662)
This implements the parts of
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3457.htm which were
adopted at the recent meeting in Brno.

Clang already implemented `__COUNTER__`, but needed some changes for
conformance. Specifically, we now diagnose when the macro is expanded
more than 2147483647 times. Additionally, we now give the expected
extension and pre-compat warnings for the feature.

To support testing the limits, this also adds a -cc1-only option,
`-finitial-counter-value=`, which lets you specify the initial value the
`__COUNTER__` macro should expand to.
2025-11-03 07:50:25 -05:00
..
benchmark [C2y] Support WG14 N3457, the __COUNTER__ macro (#162662) 2025-11-03 07:50:25 -05:00
boost-math [third-party] Add a snapshot of Boost.Math 1.89 standalone (#141508) 2025-10-27 14:43:57 -07:00
siphash/include/siphash Add back fallthrough annotations removed by 7f3afab (#148032) 2025-07-10 12:02:34 -07:00
unittest [NFC][CMake] quote ${CMAKE_SYSTEM_NAME} consistently (#154537) 2025-08-20 12:45:41 -04:00
README.md [third-party] Add a snapshot of Boost.Math 1.89 standalone (#141508) 2025-10-27 14:43:57 -07:00
update_benchmark.sh
update_boost_math.sh [third-party] Add a snapshot of Boost.Math 1.89 standalone (#141508) 2025-10-27 14:43:57 -07:00

Third-party LLVM dependencies

This directory contains third-party dependencies used in various components of LLVM. Integrating a new third-party dependency generally requires it to be licensed under the Apache-with-LLVM-exception license. For integrating code under other licenses, please follow the process explained in the LLVM Developer Policy.

In particular, due to its non-LLVM license, the Boost.Math third-party dependency can exclusively be used within the libc++ compiled library as discussed in this RFC. Do not use it in other parts of LLVM without prior discussion with the LLVM Board (and update this documentation).