| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc++] Granularize <cstddef> includes (#108696) | 1 年前 | |
[libc++][NFC] Run clang-format on libcxx/include again (#95874) As time went by, a few files have become mis-formatted w.r.t. clang-format. This was made worse by the fact that formatting was not being enforced in extensionless headers. This commit simply brings all of libcxx/include in-line with clang-format again. We might have to do this from time to time as we update our clang-format version, but frankly this is really low effort now that we've formatted everything once. | 2 年前 | |
[libc++][ranges] LWG4083: views::as_rvalue should reject non-input ranges (#155156) Fixes #105351 # References: - https://wg21.link/LWG4083 - https://wg21.link/range.as.rvalue.overview | 11 个月前 | |
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710) This significantly reduces the amount of debug information generated for codebases using libc++, without hurting the debugging experience. | 1 年前 | |
[libc++][NFC] Run clang-format on libcxx/include again (#95874) As time went by, a few files have become mis-formatted w.r.t. clang-format. This was made worse by the fact that formatting was not being enforced in extensionless headers. This commit simply brings all of libcxx/include in-line with clang-format again. We might have to do this from time to time as we update our clang-format version, but frankly this is really low effort now that we've formatted everything once. | 2 年前 | |
[libc++] Implement views::join_with (#65536) * Implement "P2441R2 views::join_with" (https://wg21.link/P2441R2), closes #105185 * Implement LWG4074 (https://wg21.link/LWG4074), closes #105346 * Complete implementation of "P2711R1 Making multi-param constructors of views explicit" (https://wg21.link/P2711R1), closes #105252 * Complete implementation of "P2770R0 Stashing stashing iterators for proper flattening" (https://wg21.link/P2770R0), closes #105250 | 1 年前 | |
[libc++][ranges] Implement the changes to vector from P1206 ( ranges::to): - add the from_range_t constructors and the related deduction guides; - add the insert_range/assign_range/etc. member functions. (Note: this patch is split from https://reviews.llvm.org/D142335) Differential Revision: https://reviews.llvm.org/D149826 | 3 年前 | |
[libc++] Granularize <cstddef> includes (#108696) | 1 年前 | |
[libc++][NFC] Replace _LIBCPP_STD_VER > x with _LIBCPP_STD_VER >= x This change is almost fully mechanical. The only interesting change is in generate_feature_test_macro_components.py to generate _LIBCPP_STD_VER >= instead. To avoid churn in the git-blame this commit should be added to the .git-blame-ignore-revs once committed. Reviewed By: ldionne, var-const, #libc Spies: jloser, libcxx-commits, arichardson, arphaman, wenlei Differential Revision: https://reviews.llvm.org/D143962 | 3 年前 | |
[libc++][NFC] Run clang-format on libcxx/include again (#95874) As time went by, a few files have become mis-formatted w.r.t. clang-format. This was made worse by the fact that formatting was not being enforced in extensionless headers. This commit simply brings all of libcxx/include in-line with clang-format again. We might have to do this from time to time as we update our clang-format version, but frankly this is really low effort now that we've formatted everything once. | 2 年前 | |
[libc++] Add [[gnu::nodebug]] on type traits (#128502) | 1 年前 | |
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710) This significantly reduces the amount of debug information generated for codebases using libc++, without hurting the debugging experience. | 1 年前 | |
[libc++] Qualify calls to nullary functions like __throw_foo (#122465) This is technically not necessary in most cases to prevent issues with ADL, but let's be consistent. This allows us to remove the libcpp-qualify-declval clang-tidy check, which is now enforced by the robust-against-adl clang-tidy check. | 1 年前 | |
[libc++][ranges] remove __workaround_52970 (#85683) ## Abstract This pull request removes the __workaround_52970 concept. This concept is a workaround for a bug described in #52970, which causes the compiler to trigger ADL on a pointer to an incomplete type in an SFINAE context. This bug is fixed in Clang 14. ## Reference - [[clang] Don't typo-fix an expression in a SFINAE context](https://reviews.llvm.org/D117603) - [[libc++] [ranges] ADL-proof the [range.access] CPOs.](https://reviews.llvm.org/D116239) | 2 年前 | |
[libc++] Granularize <cstddef> includes (#108696) | 1 年前 | |
[libc++][NFC] Replace _LIBCPP_STD_VER > x with _LIBCPP_STD_VER >= x This change is almost fully mechanical. The only interesting change is in generate_feature_test_macro_components.py to generate _LIBCPP_STD_VER >= instead. To avoid churn in the git-blame this commit should be added to the .git-blame-ignore-revs once committed. Reviewed By: ldionne, var-const, #libc Spies: jloser, libcxx-commits, arichardson, arphaman, wenlei Differential Revision: https://reviews.llvm.org/D143962 | 3 年前 | |
[libc++][ranges] Adjust inheritance detection for enable_view (#132582) Per [range.view]/6, a view_interface isn't a base class of itself, so enable_view should report false. Also, current implementation strategy handles const but not volatile, IIUC cv-qualifiers should be consistent handled. In enable_view.compile.pass.cpp, coverage for (const) volatile types are added. Drive-by: Remove one unnessary test_macro.h inclusion in a test. Fixes #132577. | 1 年前 | |
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710) This significantly reduces the amount of debug information generated for codebases using libc++, without hurting the debugging experience. | 1 年前 | |
[libc++][ranges] Implement the changes to vector from P1206 ( ranges::to): - add the from_range_t constructors and the related deduction guides; - add the insert_range/assign_range/etc. member functions. (Note: this patch is split from https://reviews.llvm.org/D142335) Differential Revision: https://reviews.llvm.org/D149826 | 3 年前 | |
| 8 个月前 | ||
| 1 年前 | ||
[libc++][ranges] Fix ranges::join_view segmented iterator trait (#158347) The outer iterator needs to move to the next segment when calling __compose. Without this change, find_segment_if would never reach the end of the join_view which caused erroneous result when calling ranges::find on a join_view of bidirectional ranges. Other specializations using the segmented iterator trait were likely to be affected as well. Fixes #158279 Fixes #93180 | 10 个月前 | |
[libc++] Implement views::join_with (#65536) * Implement "P2441R2 views::join_with" (https://wg21.link/P2441R2), closes #105185 * Implement LWG4074 (https://wg21.link/LWG4074), closes #105346 * Complete implementation of "P2711R1 Making multi-param constructors of views explicit" (https://wg21.link/P2711R1), closes #105252 * Complete implementation of "P2770R0 Stashing stashing iterators for proper flattening" (https://wg21.link/P2770R0), closes #105250 | 1 年前 | |
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710) This significantly reduces the amount of debug information generated for codebases using libc++, without hurting the debugging experience. | 1 年前 | |
[libc++][NFC] Merge is{,_nothrow,_trivially}{,_copy,_move,_default}{_assignable,_constructible} (#85308) These headers have become very small by using compiler builtins, often containing only two declarations. This merges these headers, since there doesn't seem to be much of a benefit keeping them separate. Specifically, is_{,_nothrow,_trivially}{assignable,constructible} are kept and the copy, move and default versions of these type traits are moved in to the respective headers. | 2 年前 | |
| 1 年前 | ||
[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'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 'module.modulemap.in' \ | grep -v 'CMakeLists.txt' \ | grep -v 'README.txt' \ | grep -v 'libcxx.imp' \ | grep -v '__config_site.in' \ | 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 | 2 年前 | |
[libc++] Use [[clang::no_specializations]] to diagnose invalid user specializations (#118167) Some templates in the standard library are illegal to specialize for users (even if the specialization contains user-defined types). The [[clang::no_specializations]] attribute allows marking such base templates so that the compiler will diagnose if users try adding a specialization. | 1 年前 | |
[libc++][ranges] remove __workaround_52970 (#85683) ## Abstract This pull request removes the __workaround_52970 concept. This concept is a workaround for a bug described in #52970, which causes the compiler to trigger ADL on a pointer to an incomplete type in an SFINAE context. This bug is fixed in Clang 14. ## Reference - [[clang] Don't typo-fix an expression in a SFINAE context](https://reviews.llvm.org/D117603) - [[libc++] [ranges] ADL-proof the [range.access] CPOs.](https://reviews.llvm.org/D116239) | 2 年前 | |
[libc++] Enable modernize-use-equals-delete (#93293) Differential Revision: https://reviews.llvm.org/D121213 | 2 年前 | |
[libc++][NFC] Run clang-format on libcxx/include again (#95874) As time went by, a few files have become mis-formatted w.r.t. clang-format. This was made worse by the fact that formatting was not being enforced in extensionless headers. This commit simply brings all of libcxx/include in-line with clang-format again. We might have to do this from time to time as we update our clang-format version, but frankly this is really low effort now that we've formatted everything once. | 2 年前 | |
[libc++] Add [[gnu::nodebug]] on type traits (#128502) | 1 年前 | |
[libc++] Add [[gnu::nodebug]] on type traits (#128502) | 1 年前 | |
[libc++] Granularize <cstddef> includes (#108696) | 1 年前 | |
[libc++] Granularize <cstddef> includes (#108696) | 1 年前 | |
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710) This significantly reduces the amount of debug information generated for codebases using libc++, without hurting the debugging experience. | 1 年前 | |
| 1 年前 | ||
[libc++] Add [[gnu::nodebug]] on type traits (#128502) | 1 年前 | |
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710) This significantly reduces the amount of debug information generated for codebases using libc++, without hurting the debugging experience. | 1 年前 | |
| 1 年前 | ||
[libc++] Fix LLVM 22 TODOs (#153367) We've upgraded to LLVM 22 now, so we can remove a bunch of TODOs. | 9 个月前 | |
[libc++][ranges] LWG3715: view_interface::empty is overconstrained (#85004) ## Abstract This pull request implements LWG3715: view_interface::empty is overconstrained. Here is an example similar to those described in the report, which compiles with -stdlib=libstdc++ but failed to compile with -stdlib=libc++: cpp // https://godbolt.org/z/EWEoTzah3 std::istringstream input("1 2 3 4 5"); auto i = std::views::istream<int>(input); auto r = std::views::counted(i.begin(), 4) | std::views::take(2); assert(!r.empty()); ## Reference - [Draft C++ Standard: [view.interface.general]](https://eel.is/c++draft/view.interface.general) - [LWG3715](https://wg21.link/LWG3715) | 2 年前 | |
[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'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 'module.modulemap.in' \ | grep -v 'CMakeLists.txt' \ | grep -v 'README.txt' \ | grep -v 'libcxx.imp' \ | grep -v '__config_site.in' \ | 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 | 2 年前 | |
| 1 年前 | ||
| 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 年前 | ||
| 2 年前 | ||
| 11 个月前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 1 年前 |