This change removes seemingly unused _LIBCPP_RAW_ITERATORS.
Details
- Reviewers
EricWF ldionne - Group Reviewers
Restricted Project - Commits
- rGc9e6519d158b: Remove unused _LIBCPP_RAW_ITERATORS
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
LGTM, but wait a bit to see if Eric has something to say about it. I know he's been doing work in this area for a while.
LGTM.
I can't find any usages of this internally.
PS. You don't need an LGTM from all reviewers.
FWIW raw pointer iterators are used at Yandex [1] and sometimes uncover issues like [2] (although othertimes they hide issues that would have been prevented by wrapped iterators).
[1] https://github.com/catboost/catboost/blob/08a65a2e/contrib/libs/cxxsupp/libcxx/include/string#L697
[2] https://reviews.llvm.org/D80473, https://reviews.llvm.org/D80475
It seems that Yandex is using their own patch for the same behavior, so we can still remove it from llvm as unused? And if we want it to be a feature, it should be promoted to a flag in the config flag like other ABI-affecting features, and we should add test coverage.
It seems that Yandex is using their own patch for the same behavior, so we can still remove it from llvm as unused?
Yes. Yandex maintains this feature in a custom patch: https://github.com/catboost/catboost/commit/7be19209f44c05d244412dd208e80dc584d49a95