From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vs1-xe33.google.com (mail-vs1-xe33.google.com [IPv6:2607:f8b0:4864:20::e33]) by sourceware.org (Postfix) with ESMTPS id CD49D3858C53 for ; Mon, 20 Mar 2023 02:53:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org CD49D3858C53 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=cs.washington.edu Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=cs.washington.edu Received: by mail-vs1-xe33.google.com with SMTP id d2so3057106vso.9 for ; Sun, 19 Mar 2023 19:53:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.washington.edu; s=goo201206; t=1679280810; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=sWLkDCM5fosUPmc8Rk2lBhJ6DLVv5LccqGLyr/3nvTs=; b=BqINo7vRl0C0FW1hww3oDIoxjb2vbdt6PYT0xUQfpxr6VqZWQImsJXFCLa/ERAzIvT lYm8LorGOH4jMsgO1FgLPLinxVCSaeEqkBBuBWJt9vS60Q0fyPI9QTNsJgFkZjX3++7r 92AZusjW7JYuiZQ5Ff1yqwPezGGdx/gCWPVvk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679280810; h=cc:to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=sWLkDCM5fosUPmc8Rk2lBhJ6DLVv5LccqGLyr/3nvTs=; b=R6llUzKS4CuNXUjpmg5uRTpiYRKsrFXzOhP9eN6PFJqr/N4mBd0Y0HS/uxFXEqy4i1 akKcgIXf9aySYax9d7rQyFzumykKnJKP0LCP1PKhsTswyP8Q3ccdtKNrZ4cHSo0piPAT dowsRoehkeFo9dBe4KQY+qqQVN+Twq5osNkdmfnLCpft2C7AOfrq1278ugppJFzHIlts 8uJV4Zfa0336KRLcargcBJeDaFORTnzr2e5SYPDJfpOuZE8EFURw4EYaRdzFTEzx8lXR wOD20wIKfl4V5sLHFLqF7XpdhNJ2iuoDHOBdmQqMbSFWFbFJke7UeVKfH8C4dnzhsWlq KRFQ== X-Gm-Message-State: AO0yUKVYEexSTrwdhu8EHFNmNVxnouz3KRKmVe3HtFcnsjpOkbMdRZ8s Ze7FT4tQ7W7IE3Ep8yxS54Vplj0hhRpKdV7ntOxU/Jk8ayvNq/50DG0= X-Google-Smtp-Source: AK7set/eKG61MyutKPaHSV7aJqZ+NnLIN8FZC2+9tcfg+8bL7jchRTvY5ybHWt/CDP/Ak+aNymnhhI10M+prirHRgtQ= X-Received: by 2002:a67:d289:0:b0:425:e8fe:f59b with SMTP id z9-20020a67d289000000b00425e8fef59bmr3128283vsi.6.1679280809893; Sun, 19 Mar 2023 19:53:29 -0700 (PDT) MIME-Version: 1.0 From: Ken Matsui Date: Sun, 19 Mar 2023 19:53:19 -0700 Message-ID: Subject: [PATCH] libstdc++: use new built-in trait __remove_pointer To: gcc-patches@gcc.gnu.org Cc: Patrick Palka Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-10.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: libstdc++-v3/ChangeLog: * include/std/type_traits (is_reference): Use __remove_pointer built-in trait. --- diff --git a/libstdc++-v3/include/std/type_traits b/libstdc++-v3/include/std/type_traits index 2bd607a8b8f..cba98091aad 100644 --- a/libstdc++-v3/include/std/type_traits +++ b/libstdc++-v3/include/std/type_traits @@ -2025,17 +2025,23 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION template struct __remove_pointer_helper - { typedef _Tp type; }; + { using type = _Tp; }; template struct __remove_pointer_helper<_Tp, _Up*> - { typedef _Up type; }; + { using type = _Up; }; /// remove_pointer +#if __has_builtin(__remove_pointer) + template + struct remove_pointer + { using type = __remove_pointer(_Tp); }; +#else template struct remove_pointer : public __remove_pointer_helper<_Tp, __remove_cv_t<_Tp>> { }; +#endif template struct __add_pointer_helper