[{"id":3683721,"web_url":"http://patchwork.ozlabs.org/comment/3683721/","msgid":"<afEjaKa2oAqaZuSO@redhat.com>","list_archive_url":null,"date":"2026-04-28T21:15:20","subject":"Re: [PATCH] c++: Fix up REFLECT_BASE comparison","submitter":{"id":14370,"url":"http://patchwork.ozlabs.org/api/people/14370/","name":"Marek Polacek","email":"polacek@redhat.com"},"content":"On Tue, Apr 28, 2026 at 11:12:15PM +0200, Jakub Jelinek wrote:\n> On Tue, Apr 28, 2026 at 03:23:38PM -0400, Jason Merrill wrote:\n> > > The second fix is what I found while writing testcase for this.\n> > > The r16-7260 change to compare_reflections broke REFLECT_BASE comparisons.\n> > > It now calls cp_tree_equal on their REFLECT_EXPR_HANDLE which is TREE_BINFO.\n> > > It works if lhs == rhs, returns true, or if TREE_CODE is different (returns\n> > > false), but otherwise the function isn't prepared to handle TREE_BINFO\n> > > and because TREE_BINFO is tcc_exceptional, ends with\n> > >      default:\n> > >        gcc_unreachable ();\n> > > (for --disable-checking it actually works by doing return false; after\n> > > this).  This patch fixes that in the third hunk by doing lhs == rhs\n> > > comparison only.\n> > \n> > Sounds good.\n> \n> Would you mind if this is done separately, because it can take a while to\n> settle on the printing?\n\nI think that would be a good idea to split this, and this patch looks\nfine to me, FWIW.\n \n> The following patch just fixes the comparison and adds a new testcase which\n> ICEs without the change and succeeds with it.  Will bootstrap/regtest it on\n> x86_64-linux and i686-linux momentarily.\n> \n> 2026-04-28  Jakub Jelinek  <jakub@redhat.com>\n> \n> \t* reflect.cc (compare_reflection): For REFLECT_BASE use lhs == rhs rather\n> \tthan cp_tree_equal.\n> \n> \t* g++.dg/reflect/compare12.C: New test.\n> \n> --- gcc/cp/reflect.cc.jj\t2026-04-28 22:59:39.893450512 +0200\n> +++ gcc/cp/reflect.cc\t2026-04-28 23:08:25.130424253 +0200\n> @@ -8872,6 +8872,8 @@ compare_reflections (tree lhs, tree rhs)\n>      }\n>    else if (lkind == REFLECT_ANNOTATION)\n>      return TREE_VALUE (lhs) == TREE_VALUE (rhs);\n> +  else if (lkind == REFLECT_BASE)\n> +    return lhs == rhs;\n>    else if (TYPE_P (lhs) && TYPE_P (rhs))\n>      {\n>        /* Given \"using A = int;\", \"^^int != ^^A\" should hold.  */\n> --- gcc/testsuite/g++.dg/reflect/compare12.C.jj\t2026-04-28 23:05:29.926452550 +0200\n> +++ gcc/testsuite/g++.dg/reflect/compare12.C\t2026-04-28 23:06:36.594300232 +0200\n> @@ -0,0 +1,12 @@\n> +// { dg-do compile { target c++26 } }\n> +// { dg-additional-options \"-freflection\" }\n> +\n> +#include <meta>\n> +\n> +struct A {};\n> +struct B {};\n> +struct C : A, B {};\n> +struct D : A, B {};\n> +constexpr auto ctx = std::meta::access_context::unchecked ();\n> +static_assert (bases_of (^^C, ctx)[0] != bases_of (^^C, ctx)[1]);\n> +static_assert (bases_of (^^C, ctx)[1] != bases_of (^^D, ctx)[1]);\n> \n> \n> \tJakub\n> \n\nMarek","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=PkW24T1T;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=38.145.34.32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (1024-bit key,\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=PkW24T1T","sourceware.org; dmarc=pass (p=quarantine dis=none)\n header.from=redhat.com","sourceware.org; spf=pass smtp.mailfrom=redhat.com","server2.sourceware.org;\n arc=none smtp.remote-ip=170.10.133.124"],"Received":["from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g4tWv1H58z1yHv\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 07:15:55 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 5A1A94BB8F74\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 28 Apr 2026 21:15:53 +0000 (GMT)","from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.133.124])\n by sourceware.org (Postfix) with ESMTP id 3F1E34B920F0\n for <gcc-patches@gcc.gnu.org>; Tue, 28 Apr 2026 21:15:25 +0000 (GMT)","from mail-qt1-f200.google.com (mail-qt1-f200.google.com\n [209.85.160.200]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n us-mta-398-G9S1WS_VOQyqmoyxa0A98w-1; Tue, 28 Apr 2026 17:15:23 -0400","by mail-qt1-f200.google.com with SMTP id\n d75a77b69052e-50faf575af4so84908531cf.0\n for <gcc-patches@gcc.gnu.org>; Tue, 28 Apr 2026 14:15:23 -0700 (PDT)","from redhat.com ([2603:7002:1f00:31d2::1db4])\n by smtp.gmail.com with ESMTPSA id\n d75a77b69052e-5101ae3c0aesm422741cf.18.2026.04.28.14.15.21\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 28 Apr 2026 14:15:21 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 5A1A94BB8F74","OpenDKIM Filter v2.11.0 sourceware.org 3F1E34B920F0"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 3F1E34B920F0","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 3F1E34B920F0","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777410925; cv=none;\n b=bpPXbHzRDqAQTt/rvN9fL8zo6ZV+9VEyrYNkL/ys6x1mHYlMgd3fxGeV8sMGBElmkIKWCzCvKYlIQUOosbnzVDDvR39wbM+8QVxtW69ZIkZKygdSNp3zf46xiWfLHSjzL00rw27Ercs8I3f3W22I5+2I6jdr8u1nPVfeMMFrxwE=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777410925; c=relaxed/simple;\n bh=kBJfSVOtjyT2evYr6FsNbuv2kUu7SptP0MnNSZUFI/A=;\n h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version;\n b=asLYrPxkGY/3v+1y+6bDUlWQ+hCqV8vwhqZBfPlgXsBXrqibw1r4VMgOJVo2OjoAnIX0yk+p390KKddH648AotMVNDjMkXcEpd4nWesgFa5enkNsqLrzXeg7CJtNKG1OUoBaopEkFC++TPVr4eTB0hhX03Td1JFQPg7JR8JFTZw=","ARC-Authentication-Results":"i=1; server2.sourceware.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1777410924;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n in-reply-to:in-reply-to:references:references;\n bh=XE6cif4z+qc41e61AX50UHgRUlrvDexUXmANtr5kS30=;\n b=PkW24T1TRlFmGlI7Yes2M2bHVf8SXKm+YRZWbc1Jd1uxC9r+TZAIoy0l8fKPWbZ1wqe9YZ\n 7Cii8p5v9bs7V/0n2K1t60yjagOM42QWEDFWj4bEJDl0Uag7cL9ukpRTBE2E+vl8zT50f9\n 3EhOf+HNW3ZDh6+j6nMMyyUStIIXbkc=","X-MC-Unique":"G9S1WS_VOQyqmoyxa0A98w-1","X-Mimecast-MFC-AGG-ID":"G9S1WS_VOQyqmoyxa0A98w_1777410923","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777410923; x=1778015723;\n h=user-agent:in-reply-to:content-disposition:mime-version:references\n :message-id:subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=XE6cif4z+qc41e61AX50UHgRUlrvDexUXmANtr5kS30=;\n b=Vft7lraWRUyjeGduW6wBk07vadQjPkhccbE7c+x7WHnn79L4nl8M/n1RuS5zjkxkgT\n 2ezyXimZRYC2gn6zke80lrXrX7HfbHKYE0a3V9Q67cWSrWaTbbW0uwIS8sbIsd5XJ3kx\n TSBjACWE6jhkcZ0Phq3v3uM3zRY1NIctDW3IvmA9YPhVdlXifSCnI32AtXeoUn7rRDMi\n 4qrBo1VfKbeOXK39GjfXaHWLDlJtzAAsjM4vgDxbPHi7V5L72q52QRs8dGLvXIwLXyaG\n gnlhjO7aGgStkqas6UmXpe/esdm2aiCNx4lq68IA2J3IpCzRQMkZLSzElTdZiyApTh26\n SvcA==","X-Forwarded-Encrypted":"i=1;\n AFNElJ+kaSLm/dFXV8DYPQRbuKOKRjEGRqqVmxP5qVNzQtldlhkTePF2v/ky2z5/rYgUJOZ7iSPbW32R0nOLYw==@gcc.gnu.org","X-Gm-Message-State":"AOJu0YyC1/cT4yYPId9/njlkQn7hhbMsyYJBOU68O45Uc+UMqnB2M8D6\n juQJUwDE2hExcxc5TUbgMId2B/Lf6QbYIUmaV60Duds8uMES2T9ejrfkcp3WQ+F8e6+rwMNlhaj\n ey609r6qyO6AqtO0Vkaqb95GaMF18VTyafWxZG1jYuJx3BqprYExUSGFhXMo=","X-Gm-Gg":"AeBDiesu05nisFBsJokKPNYExvscja/YR6xU7cYv3u8a4DvGSfEywGnz/Bchd3azHWz\n OWZnuW4305qn+7K7ioSiCfrSqPgo1ehmVpOY93GztK5JUGvPmZKVGrRnY1gQ0p/whswSC3pIemw\n w0IiZjG8q1pzqYLQcDPRr2U57FK/ThoR/4MxR/Tm1BjviiQBMwtMFsXcVSvCT/n+UbJEgZGPV3S\n npnjZ8t6K39Dso94Dcwne1Hlejvj7gATy40F9PkbgX4UWZqJ+o2ZG4V7KJ8b1BNYhlCwODv9Jsl\n J1hPigUUehYeXDSW3mcRg8njVNjOFdPUNrNN/1vImust6HCMiloVDgzYUGcgvuqc8y33aadugQt\n /Ox8/+vC6QFXxw+M=","X-Received":["by 2002:a05:622a:1904:b0:50f:b821:9c2d with SMTP id\n d75a77b69052e-5100e1f0523mr66841261cf.58.1777410922814;\n Tue, 28 Apr 2026 14:15:22 -0700 (PDT)","by 2002:a05:622a:1904:b0:50f:b821:9c2d with SMTP id\n d75a77b69052e-5100e1f0523mr66840741cf.58.1777410922273;\n Tue, 28 Apr 2026 14:15:22 -0700 (PDT)"],"Date":"Tue, 28 Apr 2026 17:15:20 -0400","From":"Marek Polacek <polacek@redhat.com>","To":"Jakub Jelinek <jakub@redhat.com>","Cc":"Jason Merrill <jason@redhat.com>, gcc-patches@gcc.gnu.org","Subject":"Re: [PATCH] c++: Fix up REFLECT_BASE comparison","Message-ID":"<afEjaKa2oAqaZuSO@redhat.com>","References":"<afBgbg_d74JbZLKi@tucnak>\n <af1ae3c0-f3f3-480b-889a-8e4200a8701e@redhat.com>\n <afEirwz810jBBjm2@tucnak>","MIME-Version":"1.0","In-Reply-To":"<afEirwz810jBBjm2@tucnak>","User-Agent":"Mutt/2.3.1 (2026-03-20)","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"auA6SitpPPLaTwqznTYqplEGWe6amJiJBcsfnIQqxCA_1777410923","X-Mimecast-Originator":"redhat.com","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}},{"id":3683783,"web_url":"http://patchwork.ozlabs.org/comment/3683783/","msgid":"<60950d74-0950-47c6-89ad-d3881d66fcf4@redhat.com>","list_archive_url":null,"date":"2026-04-29T02:29:54","subject":"Re: [PATCH] c++: Fix up REFLECT_BASE comparison","submitter":{"id":4337,"url":"http://patchwork.ozlabs.org/api/people/4337/","name":"Jason Merrill","email":"jason@redhat.com"},"content":"On 4/28/26 5:15 PM, Marek Polacek wrote:\n> On Tue, Apr 28, 2026 at 11:12:15PM +0200, Jakub Jelinek wrote:\n>> On Tue, Apr 28, 2026 at 03:23:38PM -0400, Jason Merrill wrote:\n>>>> The second fix is what I found while writing testcase for this.\n>>>> The r16-7260 change to compare_reflections broke REFLECT_BASE comparisons.\n>>>> It now calls cp_tree_equal on their REFLECT_EXPR_HANDLE which is TREE_BINFO.\n>>>> It works if lhs == rhs, returns true, or if TREE_CODE is different (returns\n>>>> false), but otherwise the function isn't prepared to handle TREE_BINFO\n>>>> and because TREE_BINFO is tcc_exceptional, ends with\n>>>>       default:\n>>>>         gcc_unreachable ();\n>>>> (for --disable-checking it actually works by doing return false; after\n>>>> this).  This patch fixes that in the third hunk by doing lhs == rhs\n>>>> comparison only.\n>>>\n>>> Sounds good.\n>>\n>> Would you mind if this is done separately, because it can take a while to\n>> settle on the printing?\n> \n> I think that would be a good idea to split this, and this patch looks\n> fine to me, FWIW.\n\nYes, OK.\n\n>> The following patch just fixes the comparison and adds a new testcase which\n>> ICEs without the change and succeeds with it.  Will bootstrap/regtest it on\n>> x86_64-linux and i686-linux momentarily.\n>>\n>> 2026-04-28  Jakub Jelinek  <jakub@redhat.com>\n>>\n>> \t* reflect.cc (compare_reflection): For REFLECT_BASE use lhs == rhs rather\n>> \tthan cp_tree_equal.\n>>\n>> \t* g++.dg/reflect/compare12.C: New test.\n>>\n>> --- gcc/cp/reflect.cc.jj\t2026-04-28 22:59:39.893450512 +0200\n>> +++ gcc/cp/reflect.cc\t2026-04-28 23:08:25.130424253 +0200\n>> @@ -8872,6 +8872,8 @@ compare_reflections (tree lhs, tree rhs)\n>>       }\n>>     else if (lkind == REFLECT_ANNOTATION)\n>>       return TREE_VALUE (lhs) == TREE_VALUE (rhs);\n>> +  else if (lkind == REFLECT_BASE)\n>> +    return lhs == rhs;\n>>     else if (TYPE_P (lhs) && TYPE_P (rhs))\n>>       {\n>>         /* Given \"using A = int;\", \"^^int != ^^A\" should hold.  */\n>> --- gcc/testsuite/g++.dg/reflect/compare12.C.jj\t2026-04-28 23:05:29.926452550 +0200\n>> +++ gcc/testsuite/g++.dg/reflect/compare12.C\t2026-04-28 23:06:36.594300232 +0200\n>> @@ -0,0 +1,12 @@\n>> +// { dg-do compile { target c++26 } }\n>> +// { dg-additional-options \"-freflection\" }\n>> +\n>> +#include <meta>\n>> +\n>> +struct A {};\n>> +struct B {};\n>> +struct C : A, B {};\n>> +struct D : A, B {};\n>> +constexpr auto ctx = std::meta::access_context::unchecked ();\n>> +static_assert (bases_of (^^C, ctx)[0] != bases_of (^^C, ctx)[1]);\n>> +static_assert (bases_of (^^C, ctx)[1] != bases_of (^^D, ctx)[1]);\n>>\n>>\n>> \tJakub\n>>\n> \n> Marek\n>","headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=NzTdsFky;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=38.145.34.32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (1024-bit key,\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=NzTdsFky","sourceware.org; dmarc=pass (p=quarantine dis=none)\n header.from=redhat.com","sourceware.org; spf=pass smtp.mailfrom=redhat.com","server2.sourceware.org;\n arc=none smtp.remote-ip=170.10.133.124"],"Received":["from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g51Vs6xqmz1yHX\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 12:30:29 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 2905C4BB590F\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 02:30:28 +0000 (GMT)","from us-smtp-delivery-124.mimecast.com\n (us-smtp-delivery-124.mimecast.com [170.10.133.124])\n by sourceware.org (Postfix) with ESMTP id 41BCF4B99F6E\n for <gcc-patches@gcc.gnu.org>; Wed, 29 Apr 2026 02:30:00 +0000 (GMT)","from mail-qk1-f197.google.com (mail-qk1-f197.google.com\n [209.85.222.197]) by relay.mimecast.com with ESMTP with STARTTLS\n (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n us-mta-696-NBRGIgZRMP-KpCEa-n0dOA-1; Tue, 28 Apr 2026 22:29:58 -0400","by mail-qk1-f197.google.com with SMTP id\n af79cd13be357-8d60fca52b9so1745126485a.0\n for <gcc-patches@gcc.gnu.org>; Tue, 28 Apr 2026 19:29:58 -0700 (PDT)","from [192.168.50.130]\n (130-44-146-247.s12789.c3-0.arl-cbr1.sbo-arl.ma.cable.rcncustomer.com.\n [130.44.146.247]) by smtp.gmail.com with ESMTPSA id\n af79cd13be357-8f93f582702sm60613285a.29.2026.04.28.19.29.55\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Tue, 28 Apr 2026 19:29:55 -0700 (PDT)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 2905C4BB590F","OpenDKIM Filter v2.11.0 sourceware.org 41BCF4B99F6E"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 41BCF4B99F6E","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 41BCF4B99F6E","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777429800; cv=none;\n b=DrQygx8jzvaeO7IkbTNwdL42tymAgaP1n3UNV5KoxtMJtJRk0qFsqG8U9lnQd8/8KyUnA6ZgFdCLq5trmIeLzmeurjx4qV9e8T8Sf9hpoLdyXcDP9IwJ1v7HAJIh9maZ8cVeaLKOLBSSFhnyxQYl8BNlPDLDdHGe6C3fuQMdOFY=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1777429800; c=relaxed/simple;\n bh=sNliUxYy0SC/eb8FKz3g/sJKjRJNTDWWPz43AqpDyHs=;\n h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From;\n b=d9ejiLq0VDwm61gfkrig3JfdPGa67xsmr2Ui/SNlBir8X9TABrpk+37q5NianFNFKzr9xXh5zg7NbzaAc17ETcDwK7RNDwkyxgTU4lzO2I+Xo0Lb0aH4Mv4VL5Uf8+ZZuI0QOIHMxeRyFr3ivdV0a7v5XGILe95ynYVDQ09w8fk=","ARC-Authentication-Results":"i=1; server2.sourceware.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1777429799;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding:\n in-reply-to:in-reply-to:references:references;\n bh=sg8CuH/qw/zn01R5z9WjEiXLSXnn4HBg/2G4btZEpDc=;\n b=NzTdsFkyjcj7rBpltTwedgfSkia4WRqMBOJ7TKkpBS+YnMJJ2U8lIDiVU/lMXkJwflWzVl\n /gRxUYdeF5X6PTHfmWADHnRRcrfq0mLqq5jTBdsG6YPoGudjBIy6kMsyjMLs4SIlcfOKVR\n lCFicDEYT2iKfToTvzffsWpM6PjJrpk=","X-MC-Unique":"NBRGIgZRMP-KpCEa-n0dOA-1","X-Mimecast-MFC-AGG-ID":"NBRGIgZRMP-KpCEa-n0dOA_1777429798","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777429798; x=1778034598;\n h=content-transfer-encoding:in-reply-to:from:content-language\n :references:cc:to:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=sg8CuH/qw/zn01R5z9WjEiXLSXnn4HBg/2G4btZEpDc=;\n b=iJ5t0KiBbrKOIEJAqNiF7ffbsYR9e3PWXNAZzXIXxsYm9w9An9KAjgZRXAPzJywDGE\n cEyY+wLiErwHZM+W8+m69nh08AKpNWdaeM0yt3egA5KktZOShS79aew86st4hz65prLd\n AZ6rOPzubYxFdNccKZlA1U6kjBPaeJm4lVLS5FCTpXqEA91WGVdL4viQoCozP/jmSYj7\n SSQD0+psMyzaUToGBSnukzgl6yYraFSSk4XnPTXXA1u+WM25fbqQI3VS2ej0JSJ1aoqH\n FWj2xHWXoCzSEtdBWRwv+oYacS8lgf87ORc8ghYFWWr9vq5R4mALWOPGgCROiy92dGrS\n p7/A==","X-Gm-Message-State":"AOJu0YxBCak0pN9DgtAIzYf0hzoDlc8KLUFz7+kjseNdqnkudicDgaCh\n wUdlwYnJE5RhwQUFczudiyhZO29brSMbXYrPKt1dRZiP4eXzMKBSHq/Crq6wJwQPdxCYv8NAgXH\n KXcfsrUom9feNbB3gimmaEtb/8M3fSCm2fq9Z0S1XYPcfBMlY+M5nlTJzdjI=","X-Gm-Gg":"AeBDiesFeBL134vXl5pGlDBMGNKDShHzKWVStATXDJmsC6rdxGvlN8+CRJUVQvrq5Hc\n pCBkv6cnd8wA9J5uM8Vdw0DQa08KL7QplOyoWei4sQX1CAWegHKWvg2+kZe5Os6ZQBH6hQGrSpz\n 54VxPECMyWQCfzVtF4pD5Rus99x6EN88RTJDWXpOPcT71Nz33OXl5k3aqHak9A5JPdai60SXQ3k\n I918g9BeH86TSQZOgH02QYQN5QiwAhBYgnhI9htFdzJAXIUIRlIseeUGZycrFoav+/DoxqliGrs\n uQOwA5RRGb3wjvxDqXMqWeDFlohlx0n2FEyHfRlQtsk4Lx8nkYh/LK4ALqLk9wGVpNvtoS/1lkF\n dDxl6N+1qzoWDPKmV8FUunIS/g/6nFU1e6OchEKCY12Rppun9DUHIw+XD5VaS7eKeifYanBI3rY\n HpNXWML7KrLWJdw1o02cPlDuPWtugGQgPOWu8ozdxrgg==","X-Received":["by 2002:a05:620a:4453:b0:8ed:2911:e859 with SMTP id\n af79cd13be357-8f7d95f9699mr801558585a.47.1777429797841;\n Tue, 28 Apr 2026 19:29:57 -0700 (PDT)","by 2002:a05:620a:4453:b0:8ed:2911:e859 with SMTP id\n af79cd13be357-8f7d95f9699mr801556585a.47.1777429797314;\n Tue, 28 Apr 2026 19:29:57 -0700 (PDT)"],"Message-ID":"<60950d74-0950-47c6-89ad-d3881d66fcf4@redhat.com>","Date":"Tue, 28 Apr 2026 22:29:54 -0400","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH] c++: Fix up REFLECT_BASE comparison","To":"Marek Polacek <polacek@redhat.com>, Jakub Jelinek <jakub@redhat.com>","Cc":"gcc-patches@gcc.gnu.org","References":"<afBgbg_d74JbZLKi@tucnak>\n <af1ae3c0-f3f3-480b-889a-8e4200a8701e@redhat.com> <afEirwz810jBBjm2@tucnak>\n <afEjaKa2oAqaZuSO@redhat.com>","From":"Jason Merrill <jason@redhat.com>","In-Reply-To":"<afEjaKa2oAqaZuSO@redhat.com>","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"CiruCqkrxjGd5eg1hBJmt1qQbRv5eKHzsR4js3jRuuM_1777429798","X-Mimecast-Originator":"redhat.com","Content-Language":"en-US","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"}}]