[all-commits] [llvm/llvm-project] e475bb: [libc++][memory] P1132R8: `out_ptr` - a scalable o...

Hristo Hristov via All-commits all-commits at lists.llvm.org
Thu Jul 18 20:38:24 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e475bb7ac33d7bc0446fe86858f5c3073cd48c97
      https://github.com/llvm/llvm-project/commit/e475bb7ac33d7bc0446fe86858f5c3073cd48c97
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__memory/allocator_traits.h
    A libcxx/include/__memory/inout_ptr.h
    A libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/pointer_traits.h
    M libcxx/include/memory
    M libcxx/include/module.modulemap
    M libcxx/include/version
    M libcxx/modules/std/memory.inc
    M libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr.general.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.convert.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.ctor.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr.general.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.convert.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.ctor.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/types.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][memory] P1132R8: `out_ptr` - a scalable output pointer abstraction (#73618)

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

Implements:
- https://wg21.link/P1132R8 - `out_ptr` - a scalable output pointer
abstraction
- https://eel.is/c++draft/smartptr.adapt - 20.3.4 Smart pointer adaptors
- https://wg21.link/LWG3734 - Inconsistency in `inout_ptr` and `out_ptr`
for empty case
- https://wg21.link/LWG3897- `inout_ptr` will not update raw pointer to
0

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list