This is an archive of the discontinued LLVM Phabricator instance.

Second attempt to add iterator_range::empty()
ClosedPublic

Authored by jordan_rose on Oct 3 2019, 6:35 PM.

Details

Reviewers
RKSimon
sammccall
Summary

Doing this makes MSVC complain that empty(someRange) could refer to either C++17's std::empty or LLVM's llvm::empty, which previously we avoided via SFINAE because std::empty is defined in terms of an empty member rather than begin and end. So, switch callers over to the new method as it is added.

Previously: rL361944

Diff Detail

Event Timeline

jordan_rose created this revision.Oct 3 2019, 6:35 PM
sammccall accepted this revision.Oct 4 2019, 1:15 AM
This revision is now accepted and ready to land.Oct 4 2019, 1:15 AM
RKSimon accepted this revision.Oct 5 2019, 5:00 AM

LGTM - this builds on VS now. I think you'll need to rebase against AMDGPURegisterBankInfo.cpp as several additional empty() calls appear to have appeared.

jordan_rose closed this revision.EditedOct 7 2019, 11:12 AM

Committed in rL373935 (with the update for AMDGPURegisterBankInfo.cpp).