[libcxx-commits] [PATCH] D80790: [libc++] Remove redundant empty specialization in std::array

Michael Schellenberger Costa via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri May 29 12:33:47 PDT 2020


miscco added a comment.

I have to say that this is rather worse than what we had before.

With this change we have

- A higher implementation complexity. What was previously super simple is now quite complex
- Slower debug performance trough the __data() indirection

And we gain what? It is not like there will be too much changes to array in the forseeable future that make the unification worthwile.

Note that I am totally in favor to unify span into one implementation. But this is because both the dynamically and statically typed implementation are semantically identical and there is no measurable implementation cost. That cannot be said here as array<T, 0> is completely different than array<T,N != 0>


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80790/new/

https://reviews.llvm.org/D80790





More information about the libcxx-commits mailing list