This is an archive of the discontinued LLVM Phabricator instance.

[libc++] Disentangle _If, _Or and _And
ClosedPublic

Authored by philnik on Jun 15 2022, 4:46 PM.

Details

Reviewers
ldionne
EricWF
Group Reviewers
Restricted Project
Commits
rG44c8ef01baf3: [libc++] Disentangle _If, _Or and _And

Diff Detail

Event Timeline

philnik created this revision.Jun 15 2022, 4:46 PM
Herald added a project: Restricted Project. · View Herald TranscriptJun 15 2022, 4:46 PM
philnik requested review of this revision.Jun 15 2022, 4:46 PM
Herald added a project: Restricted Project. · View Herald TranscriptJun 15 2022, 4:46 PM
Herald added a reviewer: Restricted Project. · View Herald Transcript
ldionne accepted this revision.Jun 21 2022, 8:04 AM

This LGTM once CI is passing (unless fixing the CI requires changing the approach taken by this patch, in which case please ping me for a second look).

This revision is now accepted and ready to land.Jun 21 2022, 8:04 AM
ldionne added inline comments.Jun 21 2022, 8:05 AM
libcxx/include/__type_traits/conjunction.h
27

I imagine it should be possible to optimize this similarly to what we're doing with disjunction below?

EricWF accepted this revision.Jun 21 2022, 2:01 PM
EricWF added a subscriber: EricWF.

Frankly, I'm not sure that keeping logical operators together is "disentangling" them. They're pretty tightly grouped.
And I can't say understand the point or value of all this churn either.

But on a purely technical level, this change LGTM.

libcxx/include/__type_traits/conjunction.h
53

ADL.

philnik updated this revision to Diff 440220.Jun 27 2022, 7:30 AM
  • Try to fix CI
philnik updated this revision to Diff 441335.Jun 30 2022, 3:12 AM
  • Change the name
philnik updated this revision to Diff 441341.Jun 30 2022, 3:58 AM
  • Use conditional for conditional_t
This revision was automatically updated to reflect the committed changes.