[libcxx-commits] [PATCH] D58879: Implement uses-allocator (P0591R4)

Zoe Carver via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Mon May 13 07:47:23 PDT 2019


zoecarver updated this revision to Diff 199196.
zoecarver marked 3 inline comments as done.
zoecarver added a comment.

- disable experimental tests
- update other tests

I removed the temporary "fix" I added to `make_from_tuple` because it was causing other failures and I wanted to discuss it before implementing something. The issue has to do with the `move` vs `forward` thread below. Using `std::move(pair).first` changes rvalues into lvalues and vice versa whereas forward consistently makes everything an rvalue (in the previous implementation, obviously not always). This clearly creates issues and is the reason that the tests are failing.


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

https://reviews.llvm.org/D58879

Files:
  include/experimental/memory_resource
  include/memory
  include/scoped_allocator
  test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/construct_pair_const_lvalue_pair.pass.cpp
  test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/construct_pair_rvalue.pass.cpp
  test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/construct_pair_values.pass.cpp
  test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/construct_piecewise_pair.pass.cpp
  test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/construct_piecewise_pair_evil.pass.cpp
  test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/construct_types.pass.cpp
  test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct_pair.pass.cpp
  test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct_pair_const_lvalue_pair.pass.cpp
  test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct_pair_piecewise.pass.cpp
  test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct_pair_rvalue.pass.cpp
  test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct_pair_values.pass.cpp
  test/std/utilities/allocator.adaptor/allocator.adaptor.members/construct_type.pass.cpp
  test/std/utilities/memory/allocator.uses/allocator.uses.construction/uses_allocator_construction_args.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58879.199196.patch
Type: text/x-patch
Size: 56674 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20190513/9365f436/attachment-0001.bin>


More information about the libcxx-commits mailing list