From nobody Fri May 29 23:01:55 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gRzPw0WZGz6gDsL for ; Fri, 29 May 2026 23:01:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gRzPv4fmBz3C5y for ; Fri, 29 May 2026 23:01:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780095715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kOREs8bPWwyHhXRIdhOBdT34ExAphWxZfX4O0r92IsQ=; b=R7MW18RvS7q5UOtLK5lRtziZfRgdxm8gcmmWpHOuz+DUrmyLmi8LWfylL7V7L5AaIt+HpL 5M6qZqX+9vKHkWk1sLYyJ+JwKcp6RBIlBZPTsZBqS8FPYJmkajxWBu9oX6SIMWuVYRdIOc SUGy77FpEbA8XMpx0boB7ei4xPd0KixQHwScFBqoJ+9k7MzS+rGdsRMyKC+bGLRtqe1seD Sy6LWSmp2YFU1SZB5GS+A2FnzUwwNjy/RRE29PZvo/aCLvsEPKYR6fxeWIucZqxzNccEQ1 UzpckEqSlmQ/NqnD5ZbRSVkYi6oW1VP4MSTxt+jKG61DP2CjH5lg60izhwZXag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1780095715; a=rsa-sha256; cv=none; b=kmHSpzcAPIOvYt6loojR+5lPwPLYakosDoIghjtuU5DgI3SLyC0U7eCF5iulC6mfVIweCT MQCq7nyZGSBLCgC3GEl9b8sYwOH1QVar+9+PeIpyGVP025Flwnv83Xk2mKxyUbjDmclDYk 796W6zB72sehMHQYx1UxnxI0GkOfILEPV4DnYTQaCgpcb+4JvCwfh9UzcyemlygLqVKg8O aEtfhraDRScLNjY2HLt2CVIhcmMMXl9IAtJyDVs81wGHVVFPc0PXa1EtmkxRrQdFTPYZPI ayoyKb8wtXK3uuI13ovEGSmjW/MXS8Ta7Ass3nmeVMm5NrvOaBUKEdaNh5ngCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780095715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kOREs8bPWwyHhXRIdhOBdT34ExAphWxZfX4O0r92IsQ=; b=FTW75YgXdYBQXP48mE7UBY06o47UYrkrVywN5rceYUFZc03CaoUYN+gylG4P9yI5/qonkj iK4gso0S0WBvlTR7ek39qp7Xid8+ugruNxcamjiZveKEP4jwaSMoJ85kor1M/RF8Dw+n+W TwqGIrCszpzphivAKze56Ivi89hsh0tbbQsPi5NmjqmJmgxWApfciC1plZZlquTgByZzJ6 D6A4wZz8eeEe14JoDp8IfFeiGQZbAND3dhUYuKMdfvYEn+4FuhrU1O1gqravjBc1bBafQg X1Z+nyV7PFXBQbQzYOxfazNWgfiGabsS2Giv74TJ5GY53D8mXluyrwMnMbT+/A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gRzPv4DHvztFy for ; Fri, 29 May 2026 23:01:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 40cd3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 29 May 2026 23:01:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Dimitry Andric From: Dimitry Andric Subject: git: a39d06620d7a - stable/15 - libcxx-compat: revert llvmorg-21-init-15984-g650b451d0065: List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a39d06620d7afb66f3263d1c4b487402426e81f7 Auto-Submitted: auto-generated Date: Fri, 29 May 2026 23:01:55 +0000 Message-Id: <6a1a1ae3.40cd3.71fc0e82@gitrepo.freebsd.org> The branch stable/15 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=a39d06620d7afb66f3263d1c4b487402426e81f7 commit a39d06620d7afb66f3263d1c4b487402426e81f7 Author: Dimitry Andric AuthorDate: 2026-01-04 19:43:58 +0000 Commit: Dimitry Andric CommitDate: 2026-05-29 22:57:32 +0000 libcxx-compat: revert llvmorg-21-init-15984-g650b451d0065: [libc++] Simplify the implementation of pointer_traits a bit (#142260) This is part of making libc++ 21 build with clang 18. PR: 292067 MFC after: 1 month (cherry picked from commit bb6713d38cc0d988378394f599d81d3a83dbaf03) --- .../libcxx/include/__memory/pointer_traits.h | 116 +++++++++++++++------ 1 file changed, 83 insertions(+), 33 deletions(-) diff --git a/contrib/llvm-project/libcxx/include/__memory/pointer_traits.h b/contrib/llvm-project/libcxx/include/__memory/pointer_traits.h index 8c7f8dff1b76..879b387b9ad1 100644 --- a/contrib/llvm-project/libcxx/include/__memory/pointer_traits.h +++ b/contrib/llvm-project/libcxx/include/__memory/pointer_traits.h @@ -16,13 +16,11 @@ #include <__type_traits/conditional.h> #include <__type_traits/conjunction.h> #include <__type_traits/decay.h> -#include <__type_traits/detected_or.h> #include <__type_traits/enable_if.h> #include <__type_traits/integral_constant.h> #include <__type_traits/is_class.h> #include <__type_traits/is_function.h> #include <__type_traits/is_void.h> -#include <__type_traits/nat.h> #include <__type_traits/void_t.h> #include <__utility/declval.h> #include <__utility/forward.h> @@ -36,37 +34,67 @@ _LIBCPP_PUSH_MACROS _LIBCPP_BEGIN_NAMESPACE_STD +// clang-format off +#define _LIBCPP_CLASS_TRAITS_HAS_XXX(NAME, PROPERTY) \ + template \ + struct NAME : false_type {}; \ + template \ + struct NAME<_Tp, __void_t > : true_type {} +// clang-format on + +_LIBCPP_CLASS_TRAITS_HAS_XXX(__has_pointer, pointer); +_LIBCPP_CLASS_TRAITS_HAS_XXX(__has_element_type, element_type); + +template ::value> +struct __pointer_traits_element_type {}; + template -struct __pointer_traits_element_type_impl {}; +struct __pointer_traits_element_type<_Ptr, true> { + using type _LIBCPP_NODEBUG = typename _Ptr::element_type; +}; template