[all-commits] [llvm/llvm-project] 065ac3: [libc++] LWG3001: add `remove_extent_t` to `weak_p...

Louis Dionne via All-commits all-commits at lists.llvm.org
Mon Oct 25 08:16:28 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 065ac30026d506172994310bd5badd65120f7d74
      https://github.com/llvm/llvm-project/commit/065ac30026d506172994310bd5badd65120f7d74
  Author: Konstantin Varlamov <varconst at apple.com>
  Date:   2021-10-25 (Mon, 25 Oct 2021)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/memory
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/types.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/weak_ptr.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/types.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.weak.assign/shared_ptr_Y.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.weak.assign/weak_ptr_Y.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.weak.const/shared_ptr_Y.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.weak.const/weak_ptr_Y.pass.cpp

  Log Message:
  -----------
  [libc++] LWG3001: add `remove_extent_t` to `weak_ptr::element_type`.

Also fix a few places in the `shared_ptr` implementation where
`element_type` was passed to the `__is_compatible` helper. This could
result in `remove_extent` being applied twice to the pointer's template
type (first by the definition of `element_type` and then by the helper),
potentially leading to somewhat less readable error messages for some
incorrect code.

Differential Revision: https://reviews.llvm.org/D112092




More information about the All-commits mailing list