[all-commits] [llvm/llvm-project] 4a509f: [libc++] Implement comparison operators for `tuple...

A. Jiang via All-commits all-commits at lists.llvm.org
Fri Aug 1 08:53:55 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4a509f853fa4821ecdb0f6bc3b90ddd48794cc8c
      https://github.com/llvm/llvm-project/commit/4a509f853fa4821ecdb0f6bc3b90ddd48794cc8c
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-08-01 (Fri, 01 Aug 2025)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/21.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/tuple
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.rel/eq.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.rel/lt.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.rel/size_incompatible_three_way.compile.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.rel/three_way.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Implement comparison operators for `tuple` added in C++23 (#148799)

And constrain the new `operator==` since C++26.

This patch implements parts of P2165R4, P2944R3, and a possibly improved
resolution of LWG3882. Currently, libstdc++ and MSVC STL constrain the
new overloads in the same way.

Also set feature-test macro `__cpp_lib_constrained_equality` and add
related release note, as P2944R3 will completed with this patch.

Fixes #136765
Fixes #136770
Fixes #105424



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