From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 75CC83858288 for ; Wed, 15 Jun 2022 21:58:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 75CC83858288 Received: from mail-qv1-f69.google.com (mail-qv1-f69.google.com [209.85.219.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-462-Aqf7hKbUOQ--A7GHlhtXRg-1; Wed, 15 Jun 2022 17:58:32 -0400 X-MC-Unique: Aqf7hKbUOQ--A7GHlhtXRg-1 Received: by mail-qv1-f69.google.com with SMTP id d2-20020a0cf0c2000000b0046e5de39f7fso4105255qvl.21 for ; Wed, 15 Jun 2022 14:58:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=tHGTS0bb/696KjVzlZaRhO8Ccy3iZAMGLGmAT/YDiJ8=; b=j76LDvchmXC/P2LOUyreTK5jWLFpStZ+cj67rQp9B6vVXtZp3LJRiW0i5SSMkS574c 78/DOIjhW5cUjZFVJQOFALqD3R6XUhrj1Ax21BgKi+I0b/TA8xKdNDjtV/9QELjOrn9l /vQlv2nrSRmpS6pffNVY+1DxBO6JsDBqLpEDMuTf5WS8FGrnABpDQrIqmdRiLwMDOXaZ 79P5S1O+DM47RlUSbs7IePgU4PpDAtME8D+GXQjZkkX8LyFeZU8d7S/O5Rt7+AVTSv4r gWmLMP6sQQ1EJ9PJUhmGECF5fWxWINER07Yjw//yi9df3Ih4g3rlnj2d9Z3ikpguYxg+ fQcg== X-Gm-Message-State: AJIora/ZMEydW1TtUkIVwQmYZQvka1UXpseQEdDOzeFbGptqw3ydRRNt dKWtQwivld0IdufcnTGDyiQDFZrocxOqBNwv1czSTHMeM1FYfbLUJq212SnySN28P5wY7ZoPUTc RMpG2QYhivhkW/Kx/YQ== X-Received: by 2002:a05:620a:4384:b0:6a6:c208:cfe5 with SMTP id a4-20020a05620a438400b006a6c208cfe5mr1431439qkp.1.1655330311876; Wed, 15 Jun 2022 14:58:31 -0700 (PDT) X-Google-Smtp-Source: AGRyM1t/Mbab51cAuN5VbNDXYkiKHRhOj62hWYq8zEnuiBMM3Q/f1eB700P8tRu5L5BKLtnLQ0iacQ== X-Received: by 2002:a05:620a:4384:b0:6a6:c208:cfe5 with SMTP id a4-20020a05620a438400b006a6c208cfe5mr1431430qkp.1.1655330311660; Wed, 15 Jun 2022 14:58:31 -0700 (PDT) Received: from t14s.localdomain (c-73-69-212-193.hsd1.nh.comcast.net. [73.69.212.193]) by smtp.gmail.com with ESMTPSA id f9-20020a05620a408900b006a740bb8578sm55889qko.83.2022.06.15.14.58.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Jun 2022 14:58:30 -0700 (PDT) Message-ID: <031856c8aaa601c4cd885a8bb9c7f00081eb22e1.camel@redhat.com> Subject: Re: PING Re: [PATCH 07/10] value-relation.h: add 'final' and 'override' to relation_oracle vfunc impls From: David Malcolm To: Andrew MacLeod , Aldy Hernandez Cc: gcc-patches Date: Wed, 15 Jun 2022 17:58:29 -0400 In-Reply-To: <63d8b4a2-77f5-a7f7-7b93-87f29185b91c@redhat.com> References: <20220523192834.3785673-1-dmalcolm@redhat.com> <20220523192834.3785673-8-dmalcolm@redhat.com> <2edbd394896697ef6c72c3203a2fd22ecdb637fb.camel@redhat.com> <8d3e4e47a6bf2905b1a806234423c2eabd2d546b.camel@redhat.com> <63d8b4a2-77f5-a7f7-7b93-87f29185b91c@redhat.com> User-Agent: Evolution 3.38.4 (3.38.4-1.fc33) MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_SHORT, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jun 2022 21:58:35 -0000 On Wed, 2022-06-15 at 09:33 -0400, Andrew MacLeod wrote: > On 6/13/22 21:24, David Malcolm wrote: > > On Mon, 2022-06-13 at 20:45 -0400, Aldy Hernandez wrote: > > > Final implies we can't further derive from the derived class, > > > right? > > "final" on a vfunc implies that nothing overrides that vfunc, but you > > could still have further derived classes. > > > > You can think of it as "nothing further overrides this vfunc", as > > both > > a hint to the human reader, and an optimization hint to the compiler. > > > > You can always just remove the "final" if you want to override it in > > the future (unless the override is happening in a plugin, I suppose). > > > > > If so > > > we may want just override. > > "override" is indeed probably more useful, in that it documents to > > compilers and human readers that you intend this to override a vfunc. > > > > FWIW I wrote the patch by using both "final" and "override", and then > > dropping the "final" everywhere I needed to to get it to compile. > > > > Dave > > > > > > > Andrew, what are your thoughts? > > > > > > Thanks for doing this. > > OK by me. Thanks; I've pushed this to trunk as r13-1118-gb06b84dbca5a11, after retesting (bootstrapped & regrtested again on x86_64-pc-linux-gnu). FWIW, as noted inĀ  https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595437.html I tried hacking in -Werror=suggest-override to the Makefile, and there were a bunch of places that it suggested could use "override" in gcc/range.op.cc, but I decided not to touch that, because it seems to be under heavy development by you (and also, frankly, out of laziness on my part). So maybe you might want to look at adding those at some point, to avoid snafus where you meant to override something, but got the signature slightly wrong, etc. Dave