This is an archive of the discontinued LLVM Phabricator instance.

[libc++] [P0887] Add newest feature-test macros; mark `type_identity` as implemented.
ClosedPublic

Authored by Quuxplusone on Dec 30 2021, 8:34 PM.

Details

Summary

__cpp_lib_type_identity was implemented way back in cf49ccd0 (Clang 8), probably before the feature-test macro had been settled on.

__cpp_lib_string_resize_and_overwrite will be added by D113013 so I didn't add it here.

Fixes https://llvm.org/PR47261

Diff Detail

Event Timeline

Quuxplusone requested review of this revision.Dec 30 2021, 8:34 PM
Herald added 1 blocking reviewer(s): Restricted Project. · View Herald TranscriptDec 30 2021, 8:34 PM
philnik accepted this revision.Dec 31 2021, 3:12 AM

Could you remove __cpp_lib_string_resize_and_overwrite? It's already part of D113013 (and I plan to remove the constexpr test and land it once CI is available again). Otherwise LGTM!

Quuxplusone edited the summary of this revision. (Show Details)

Removed __cpp_lib_string_resize_and_overwrite. Remembered to git add the new test file.

Mordante accepted this revision as: Mordante.Jan 2 2022, 8:33 AM

LGTM, thanks for adding the other missing entries!

libcxx/utils/generate_feature_test_macro_components.py
74

Please update the patch title and description to match the changed scope.

Quuxplusone added inline comments.Jan 2 2022, 9:56 AM
libcxx/utils/generate_feature_test_macro_components.py
74

The title is currently "[libc++] [P0887] Add newest feature-test macros; mark type_identity as implemented." What did you have in mind?

ldionne accepted this revision.Jan 3 2022, 8:09 AM
This revision is now accepted and ready to land.Jan 3 2022, 8:09 AM
Mordante added inline comments.Jan 3 2022, 10:07 AM
libcxx/utils/generate_feature_test_macro_components.py
74

The title got me on the wrong foot due to the wording. It adds more macros than the one in P0887 and only marks P0887 as complete. So it seems a bit confusing, reading it again it's not really wrong. (Maybe just drop P0887 from the title.)