[libcxx-commits] [PATCH] D110503: [libc++] Implement P1394r4 for span: range constructor

Joe Loser via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Sun Sep 26 08:47:47 PDT 2021


jloser created this revision.
jloser added reviewers: ldionne, Quuxplusone, cjdb.
jloser requested review of this revision.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.

Implement https://wg21.link/p1394 which allows span to be constructible
from any contiguous forwarding-range that has a compatible element type.
This also fixes non-conforming constructors for ptr/len and ptr/ptr
favor of iterator/len and iterator/iterator constructors.

Fixes https://bugs.llvm.org/show_bug.cgi?id=51443


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D110503

Files:
  libcxx/include/span
  libcxx/test/std/containers/views/span.cons/container.fail.cpp
  libcxx/test/std/containers/views/span.cons/container.pass.cpp
  libcxx/test/std/containers/views/span.cons/deduct.pass.cpp
  libcxx/test/std/containers/views/span.cons/iterator_iterator.fail.cpp
  libcxx/test/std/containers/views/span.cons/iterator_iterator.pass.cpp
  libcxx/test/std/containers/views/span.cons/iterator_len.fail.cpp
  libcxx/test/std/containers/views/span.cons/iterator_len.pass.cpp
  libcxx/test/std/containers/views/span.cons/ptr_len.fail.cpp
  libcxx/test/std/containers/views/span.cons/ptr_len.pass.cpp
  libcxx/test/std/containers/views/span.cons/ptr_ptr.fail.cpp
  libcxx/test/std/containers/views/span.cons/ptr_ptr.pass.cpp
  libcxx/test/std/containers/views/span.cons/range.fail.cpp
  libcxx/test/std/containers/views/span.cons/range.pass.cpp
  libcxx/test/std/containers/views/span.cons/simple_range.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D110503.375114.patch
Type: text/x-patch
Size: 72557 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210926/e94ccbf6/attachment-0001.bin>


More information about the libcxx-commits mailing list