[all-commits] [llvm/llvm-project] 549545: [libc++] Rework compressed pair constructors.

Eric via All-commits all-commits at lists.llvm.org
Mon Dec 16 15:39:52 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 549545b64aab77d2a1784062451ee1c33f8324d2
      https://github.com/llvm/llvm-project/commit/549545b64aab77d2a1784062451ee1c33f8324d2
  Author: Eric Fiselier <eric at efcs.ca>
  Date:   2019-12-16 (Mon, 16 Dec 2019)

  Changed paths:
    M libcxx/include/__functional_03
    M libcxx/include/__hash_table
    M libcxx/include/__split_buffer
    M libcxx/include/__tree
    M libcxx/include/deque
    M libcxx/include/forward_list
    M libcxx/include/future
    M libcxx/include/list
    M libcxx/include/memory
    M libcxx/include/string
    M libcxx/include/vector
    M libcxx/test/libcxx/containers/unord/unord.set/missing_hash_specialization.fail.cpp

  Log Message:
  -----------
  [libc++] Rework compressed pair constructors.

This patch de-duplicates most compressed pair constructors
to use the same code in C++11 and C++03.

Part of doing that is deleting the "__second_tag()" and replacing
it with a "__value_init_tag()" which has the same effect, but
allows for the removal of the special "one-arg" first element
constructor.

This patch is intended to have no semantic change.




More information about the All-commits mailing list