llvm-project/libcxx/test/std/iterators/iterator.primitives
Konstantin Varlamov 3f630cff65 [libc++][ranges] Implement ranges::uninitialized_default_construct{,_n}.
Defined in [`specialized.algorithms`](wg21.link/specialized.algorithms).

Also:
- refactor the existing non-range implementation so that most of it
  can be shared between the range-based and non-range-based algorithms;
- remove an existing test for the non-range version of
  `uninitialized_default_construct{,_n}` that likely triggered undefined
  behavior (it read the values of built-ins after default-initializing
  them, essentially reading uninitialized memory).

Reviewed By: #libc, Quuxplusone, ldionne

Differential Revision: https://reviews.llvm.org/D115315
2021-12-14 14:11:46 -08:00
..
iterator.basic [libc++] Deprecate std::iterator and remove it as a base class 2021-05-27 11:34:04 -04:00
iterator.operations [libc++] Avoid triggering warnings for implicit conversion 2021-07-23 10:53:10 -04:00
iterator.traits [libc++] Fix backdeployment annotations for std::filesystem 2021-11-24 16:58:15 -05:00
range.iter.ops [libc++][ranges] Implement ranges::uninitialized_default_construct{,_n}. 2021-12-14 14:11:46 -08:00
std.iterator.tags [libc++] Remove the c++98 Lit feature from the test suite 2020-06-03 09:37:22 -04:00