Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:110284 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 66318 invoked from network); 27 May 2020 08:43:33 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 27 May 2020 08:43:33 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 82FD7180088 for ; Wed, 27 May 2020 00:23:56 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-il1-f176.google.com (mail-il1-f176.google.com [209.85.166.176]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 27 May 2020 00:23:56 -0700 (PDT) Received: by mail-il1-f176.google.com with SMTP id j3so22963155ilk.11 for ; Wed, 27 May 2020 00:23:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ha3YURFYRJk6bu+mACb/9es3HynhrDJxmzpCGtTAT1w=; b=qzmE+EaEqurIrXdPH1luWkrk5NtVsPI5WSXxfZjyKs9HruwnlgpLlYXbRiWhrkkJTu uAxMbtYdwGo8BwZeu8JjkK8GJsFPMcQtU8wrIvMIqtJZVzcnu2x19Ojgqgr2wt2h9NJl fBwKYqbdssD/6ti2G2CYQZgHB0RUCrrQ5lxnRu3FzAGnWZ7TbbQGCoCXT4i8/kk/EUqW Cr5PdLu2Rs7DHTY0/5X4dJV1Zg/8BQH74yPcG1yPVuDOIJ1SqKkseeDaQU0JznAM4+Iz FKshMBQKp978xdK4Axg2/1CEuue7zBvfHoEP4eja1GjPqIVR/A/lPvkn8lkYvfKjuALB qNhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ha3YURFYRJk6bu+mACb/9es3HynhrDJxmzpCGtTAT1w=; b=PmDw23mtiSpbpe4VRLMaEWwe341r++Z5XZ42iVOH2+vBA6GQMoHYBiCC5KStUmEeiE nfBPxGMuNG3vVXJ/Om4hxBNPUEgWwBOVdcgzfAL4qlE24oVBAq850RNMfrdO34TAbVWA jY+fIv8ShrDv4JXLyHup8mS8dFySEMDww8qiK5B2vb/XsaYpZq+axQMRj3/F+jej6HNl 2gkx9mpd0tXC10l7+W2BhTBymtZXMm5LBrG2u1hqnKH3KWbOz3pULjZfapMcuZNSEXmw y7lsB9DQkGeNPnQ1cNZ3NQInEgBLF0veNwAUdpY72JTe20yukW99DYGt4ugDCuWi06ni QTNw== X-Gm-Message-State: AOAM532MxLlbUZyBKHXAiwuxvsNDhccSzT7rcmdfXHnTW3y3Cxn1ZRlr /i/ATEs2Wy29Hhuq3dGtSEH3n9eZom4L1nNW71w= X-Google-Smtp-Source: ABdhPJxSdIXm/HGG/KX2U23H/YdaTGhFMtZQzEtJ9AYu25JpytpL6kP3t9P5iHdB1hop4De4mzrmOq+LMz9GhdPHBfk= X-Received: by 2002:a92:5f46:: with SMTP id t67mr4272107ilb.64.1590564232376; Wed, 27 May 2020 00:23:52 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Wed, 27 May 2020 10:23:36 +0300 Message-ID: To: =?UTF-8?Q?Pedro_Magalh=C3=A3es?= Cc: Marco Pivetta , PHP internals Content-Type: multipart/alternative; boundary="00000000000010382405a69c1834" Subject: Re: [PHP-DEV] [RFC] [Discussion] Remove inappropriate inheritance signature checks on private methods From: drealecs@gmail.com (=?UTF-8?Q?Alexandru_P=C4=83tr=C4=83nescu?=) --00000000000010382405a69c1834 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, May 27, 2020 at 2:08 AM Pedro Magalh=C3=A3es wrot= e: > On Tue, May 26, 2020 at 3:46 PM Marco Pivetta wrote: > > > Considering that, as far as I know, only the constructor remains > "special". > > > > Leaving the special case only for constructors instead of all magic metho= ds > sounds better to me. Right now, that sounds like a winning compromise for > the RFC. It is still an exception to a rule, but one that can be better > justified. > > Thanks, > Pedro > Hi, I've been following this and I agree that constructor can be an exception for now. Anyway, constructor is special, considering inheritance. For example, the declaration signature is not required to be compatible when overridden. You might say that constructors are redeclared instead of overridden, shadowing the parent constructor and final would disallow redeclaration. In terms of what final does to a private method, as I understand, it will just be ignored everywhere? (except for constructor) I mean, final deny overriding but private methods cannot be overridden by design. We should have that in the documentation as well, I guess. Alex --00000000000010382405a69c1834--