[libcxx-commits] [libcxx] [libcxx] address of all the things. (PR #102832)
A. Jiang via libcxx-commits
libcxx-commits at lists.llvm.org
Sun Aug 11 18:36:36 PDT 2024
frederick-vs-ja wrote:
I've confirmed that most changes are alread implemented or nothing to do. I.e. no change seems needed for the existing code.
- [ ] [time.parse] libc++ hasn't implemented these `parse` functions.
- [x] [string.accessors] no change needed, only the post conditions made correctly specified.
- [x] [string.view.iterators] same as above.
- [x] [string.view.find] no change needed, libc++ is using a better strategy that doesn't take address of the character.
- [x] [container.requirements.general] no change needed, we don't use `(&a)->~X()`.
- [x] [output.iterators] same as [string.accessors].
- [x] [bidirectional.iterators] same as [string.accessors].
- [x] [re.traits] already implemented initially https://github.com/llvm/llvm-project/blob/70505305c1e191ad0cd64f3e6ee43000b867bbed/libcxx/include/regex#L985-L992
- [x] [re.regiter.cnstr] implemented in 6973bb06d9c6d1704546748f869af1262e35f4c7
- [x] [re.regiter.deref] implemented in 6973bb06d9c6d1704546748f869af1262e35f4c7
- [x] [thread.lock.guard] same as [string.accessors].
Perhaps we should
- add tests covering iterators and elements for which `operator&` is overloaded, and ensure that all algorithms and containers work for them, and then
- claim LWG3131 to be Complete when the `parse` functions get implemented.
https://github.com/llvm/llvm-project/pull/102832
More information about the libcxx-commits
mailing list