Implement the global function std::ssize
Diff Detail
Event Timeline
libcxx/test/std/iterators/iterator.container/ssize.pass.cpp | ||
---|---|---|
25 | I can remove this test for C++14 |
libcxx/include/iterator | ||
---|---|---|
1868 | Is there a reason for making this inline? Templates are already inline by default. | |
libcxx/test/std/iterators/iterator.container/ssize.pass.cpp | ||
42 | Why is this commented? I think we can have a libc++ specific check here because our std::size(Container const&) is marked noexcept conditionally on the noexcept-ness of container.size(). | |
59 | ditto |
Update based on Louis' comments.
Make std::ssize conditionally noexcept.
Leave it as inline _LIBCPP_INLINE_VISIBILITY
Update the ssize tests to check the noexcept-ness.
Update the size tests to check the noexcept-ness.
libcxx/include/iterator | ||
---|---|---|
1868 | All "the rest of these" (size,data, empty, etc) are inline _LIBCPP_INLINE_VISIBILITY. I left these new ones the same. |
Is there a reason for making this inline? Templates are already inline by default.