C++17 deprecated std::is_literal_type and std::result_of, C++20 removed them.
Implements parts of:
- P0174R2 'Deprecating Vestigial Library Parts in C++17'.
- P0619R4 'Reviewing Deprecated Facilities of C++17 for C++20'.
Differential D102992
[libcxx][type_traits] remove `std::is_literal_type` and `std::result_of` for C++20 Wmbat on May 23 2021, 2:14 PM. Authored by
Details
C++17 deprecated std::is_literal_type and std::result_of, C++20 removed them. Implements parts of:
Diff Detail
Unit Tests Event TimelineComment Actions LGTM % comments, but please fix the review comments and wait for "libc++" to accept.
Comment Actions Thanks for working on this. Please update this note https://libcxx.llvm.org/docs/Cxx2aStatus.html#note-p0619
Comment Actions
#pragma clang diagnostic ignored "-Wdeprecated-declarations" #pragma GCC diagnostic ignored "-Wdeprecated-declarations" with // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
Comment Actions Added _LIBCPP_ENABLE_CXX20_REMOVED_IS_LITERAL_TYPE macro and fixed inconsistencies in some unit tests.
Comment Actions LGTM % comments, again. @ldionne should take a look.
Comment Actions LGTM again now.
Comment Actions Changes based on recommendations.
Comment Actions Continues to LbasicallyGTM. Please rebase on trunk and re-upload the diff, so that we can get a clean buildkite run; I see the latest run failed some tests that have been fixed in main for a while already.
Comment Actions Almost LGTM, the only issue I have with this is the duplication of the atomic_helpers.h header, for which there's a better solution available.
Comment Actions Thanks!
|
nit: lowercase "deprecated" and "removed" here and lines 236 and 305 below