TTobias Hieta[libc++][format] Fixes out of bounds access.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc++] Mark slow tests as unsupported on GCC Some tests in our test suite are unbelievably slow on GCC due to the use of the always_inline attribute. See [1] for more details. This patch introduces the GCC-ALWAYS_INLINE-FIXME lit feature to disable tests that are plagued by that issue. At the same time, it moves several existing tests from ad-hoc UNSUPPORTED: gcc-12 markup to the new GCC-ALWAYS_INLINE-FIXME feature, and marks the slowest tests reported by the CI as UNSUPPORTED: GCC-ALWAYS_INLINE-FIXME. [1]: https://discourse.llvm.org/t/rfc-stop-supporting-extern-instantiations-with-gcc/71277/1 Differential Revision: https://reviews.llvm.org/D152736 | 3 年前 | |
[libc++][format] Removes the experimental status. The code has been quite ready for a while now and there are no more ABI breaking papers. So this is a good time to mark the feature as stable. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D150802 | 3 年前 | |
[libc++][format] Removes the experimental status. The code has been quite ready for a while now and there are no more ABI breaking papers. So this is a good time to mark the feature as stable. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D150802 | 3 年前 | |
[libc++] Add missing includes Those were found while trying to enable configurations like no-threads and no-localization with Clang modules enabled. Differential Revision: https://reviews.llvm.org/D153977 | 3 年前 | |
[libc++] Fix problems with GCC 13 and switch to it in the CI Reviewed By: #libc, #libc_abi, Mordante Spies: arphaman, Mordante, libcxx-commits, arichardson Differential Revision: https://reviews.llvm.org/D157060 | 2 年前 | |
[libc++][format] Fixes out of bounds access. Fixes https://llvm.org/PR65011 Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D158940 (cherry picked from commit 8930d04d5580c6a2cf04545c87387cd150cd7b46) | 2 年前 | |
[libc++][format] Improves diagnostics. Improves both the compile-time and run-time errors. At compile-time it does a bit more work to get more specific errors. This could be done at run-time too, but that has a performance penalty. Since it's expected most use-cases use format* instead of vformat* the compile-time errors are more common. For example when using std::format_to("{:-c}", 42); Before compile output would contain std::__throw_format_error("The format-spec should consume the input or end with a '}'"); Now it contains std::__throw_format_error("The format specifier does not allow the sign option"); Given a better indication the sign option is not allowed. Note the output is still not user-friendly; C++ doesn't have good facilities to generate nice messages from the library. In general all messages have been reviewed and improved, using a more consistent style and using less terms used in the standard. For example format-spec -> format specifier arg-id -> argument index Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D152624 | 2 年前 | |
[libc++] Mark slow tests as unsupported on GCC Some tests in our test suite are unbelievably slow on GCC due to the use of the always_inline attribute. See [1] for more details. This patch introduces the GCC-ALWAYS_INLINE-FIXME lit feature to disable tests that are plagued by that issue. At the same time, it moves several existing tests from ad-hoc UNSUPPORTED: gcc-12 markup to the new GCC-ALWAYS_INLINE-FIXME feature, and marks the slowest tests reported by the CI as UNSUPPORTED: GCC-ALWAYS_INLINE-FIXME. [1]: https://discourse.llvm.org/t/rfc-stop-supporting-extern-instantiations-with-gcc/71277/1 Differential Revision: https://reviews.llvm.org/D152736 | 3 年前 | |
[libc++][format] Removes the experimental status. The code has been quite ready for a while now and there are no more ABI breaking papers. So this is a good time to mark the feature as stable. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D150802 | 3 年前 | |
[libc++][format] Improves diagnostics. Improves both the compile-time and run-time errors. At compile-time it does a bit more work to get more specific errors. This could be done at run-time too, but that has a performance penalty. Since it's expected most use-cases use format* instead of vformat* the compile-time errors are more common. For example when using std::format_to("{:-c}", 42); Before compile output would contain std::__throw_format_error("The format-spec should consume the input or end with a '}'"); Now it contains std::__throw_format_error("The format specifier does not allow the sign option"); Given a better indication the sign option is not allowed. Note the output is still not user-friendly; C++ doesn't have good facilities to generate nice messages from the library. In general all messages have been reviewed and improved, using a more consistent style and using less terms used in the standard. For example format-spec -> format specifier arg-id -> argument index Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D152624 | 2 年前 | |
[libc++] Add missing includes Those were found while trying to enable configurations like no-threads and no-localization with Clang modules enabled. Differential Revision: https://reviews.llvm.org/D153977 | 3 年前 |