| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Fix EBO on std::optional and std::variant when targeting the MSVC ABI Committing on behalf of davidben. Reviewed as D146190 Patch originally by Jan Dörrie in https://reviews.llvm.org/D120064. I've just updated it to include tests, and update documentation that MSVC ABI is not stable. In the current implementation both std::optional and std::variant don't perform the EBO on MSVC's ABI. This is because both classes inherit from multiple empty base classes, which breaks the EBO for MSVC. This patch fixes this issue by applying the empty_bases declspec attribute, which is already used to fix a similar issue for std::tuple. See https://reviews.llvm.org/D120064 for discussion on MSVC ABI stability. From the discussion, libc++ doesn't have users that expect a stable ABI on MSVC. The fix is thus applied unconditionally to benefit more users. Documentation has been updated to reflect this. Fixes https://github.com/llvm/llvm-project/issues/61095. | 3 年前 | |
[libc++] Remove the old HTML documentation This commit finishes moving the <atomic> design documents to the RST documentation and removes the old documentation. https://libcxx.llvm.org is already pointing to the new documentation only now, so the removal of the old documentation is really a NFC. I went over the old documentation and I don't think we're leaving anything important behind - I think everything important was mentionned in the RST documentation anyway. | 5 年前 | |
[libc++] Correct outdated documentation about __config_site The way we handle __config_site changed 1-2 years ago, and the documentation was never updated -- this commit does that. | 4 年前 | |
[libc++][NFC] Clarify libc++'s stance about implementing the Networking TS | 1 年前 | |
[libc++] Add coding guidelines to the docs (#117051) We have a buch of coding guidelines which are either documented as design docs, which aren't really applicable or not at all. This moves coding guidelines we have currently in the design docs into a separate file and adds a bunch of guidelines which we have but aren't documented anywhere. | 1 年前 | |
[libc++] Use c++20 instead of c++2a consistently. * The only exception is that the flag -std=c++2a is still used not to break compatibility with older compilers (clang <= 9, gcc <= 9). * Bump _LIBCPP_STD_VER for C++20 to 20 and use 21 for the future standard (C++2b). That's a preparation step to add c++2b support to libc++. Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D93383 | 5 年前 | |
[libc++] Fix typos in documentation (#139853) | 1 年前 | |
[libc++] Stabilize transitive includes for C++23 (#134143) Our mechanism to retain transitive includes for backwards compatibility was previously not taking into account C++23: this means that users on C++23 would not get any protection against the removal of transitive includes. This was fine when C++23 was still not used widely and it allowed us to make build time improvements for such "bleeding edge" users. It also didn't take into account the larger topic of providing a backwards compatible set of declarations, which is the real goal of this mechanism. However, now that C++23 is used pretty widely, we should start providing transitive includes backwards compatibility for users of that language mode too. This patch documents that requirement and mentions backwards compatibility of the set of declarations as well, meaning we may also add internal headers in the _LIBCPP_REMOVE_TRANSITIVE_INCLUDES blocks going forward. There are no actual changes to the code since we haven't removed transitive includes since the last release. However, starting now, we should guard any removal of transitive includes behind #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 23 instead of #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 | 10 个月前 | |
[NFC][libc++][doc] Improves rst formatting. | 3 年前 | |
[libc++][PSTL] Add design docs Reviewed By: ldionne, Mordante, #libc Spies: grandinj, libcxx-commits, arphaman Differential Revision: https://reviews.llvm.org/D148478 | 3 年前 | |
| 1 年前 | ||
[libc++][chrono] Adds tzdb_list implementation. This is the first step to implement time zone support in libc++. This adds the complete tzdb_list class and a minimal tzdb class. The tzdb class only contains the version, which is used by reload_tzdb. Next to these classes it contains documentation and build system support needed for time zone support. The code depends on the IANA Time Zone Database, which should be available on the platform used or provided by the libc++ vendors. The code is labeled as experimental since there will be ABI breaks during development; the tzdb class needs to have the standard headers. Implements parts of: - P0355 Extending <chrono> to Calendars and Time Zones Addresses: - LWG3319 Properly reference specification of IANA time zone database Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D154282 | 2 年前 | |
[libcxx][doc][nfc] Fixed typo in doc | 4 年前 | |
[libc] Fix typos in documentation | 3 年前 | |
[libc++] Remove a few incorrect _LIBCPP_EXPORTED_FROM_ABI annotations (#132602) This has two benefits: - It is less likely that the macro will be copy-pasted around when unnecessary - We can drop _LIBCPP_HIDE_FROM_ABI from any member functions once we are able to make _LIBCPP_HIDE_FROM_ABI the default within libc++ | 11 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 5 年前 | ||
| 1 年前 | ||
| 10 个月前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 11 个月前 |