Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:98656 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 98632 invoked from network); 28 Mar 2017 16:09:55 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 28 Mar 2017 16:09:55 -0000 Authentication-Results: pb1.pair.com smtp.mail=netmo.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=netmo.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.220.178 as permitted sender) X-PHP-List-Original-Sender: netmo.php@gmail.com X-Host-Fingerprint: 209.85.220.178 mail-qk0-f178.google.com Received: from [209.85.220.178] ([209.85.220.178:34088] helo=mail-qk0-f178.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A2/64-61593-2DA8AD85 for ; Tue, 28 Mar 2017 11:09:54 -0500 Received: by mail-qk0-f178.google.com with SMTP id d10so63856372qke.1 for ; Tue, 28 Mar 2017 09:09:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Do9uUkRSlyUI7LeUN7K3NuOOJiBOuVBmKdcGf42awKE=; b=jIoGBSH2v7Vrc3LUyWNpIr5wx4ARyJACLVP3hwiLwtXu5+/olb+oAWKA2zZMIKRh53 mH2QT8VT7WW49rX2w9lNqN1aixRcxMKdGWSoC9MMSH6MG+NT0GPJU1X2ocefwmTslqRV iqSxfXRXEGZ++dZvJ1CsxkkVBNkX5PARI3xlCQ3BR479nSMgy68mX4EjGfvJRxxsou7O vs3TAnf+KsofUEbgRFTfBbChzAk4J2niseNPLN8ULsiIANdI57w9/SnQnjfIHtXjEjwM wSV3M9224kPARI92e3b69SsMY3LI+NuSgBtCgNWyAqgyBLZsnv3kxgroDdJMeljKyK7D H3pg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Do9uUkRSlyUI7LeUN7K3NuOOJiBOuVBmKdcGf42awKE=; b=UPhXtELGDKXgbXjfJeg2ZhxXtf9nK80lw90T+BOVGqzuWktEtiUAsdj30+6o652eDg EtiS4BsMGEWncPwkHvFKTfpt2+UAwSoCwqthlcNw9NanNdKtZ1vpI+76shAN54LhMiDc pEiOE2FPWiyg/YqstGN5/gFDqEAmMjuVFgKRsPvQwlDOI0YGZ9HoTzeUX6ndRSkGaeB/ zTbOKTobHNkGRwB26WYHunVN8eFRVrA41Rl4O/fQKEXo9lWRZTLF4FaG92C651Z4wePK gZ0Nxnw6cNr48ghHnFNFYp1nNZISEYXN/UqHJ3BHcjJiCQ7dv7hzBmdaPbOTxm9LtSef tA2Q== X-Gm-Message-State: AFeK/H3SXIudRkIYLyHovurM0uXvBclYfHePM8dZjx1xcTpisl41ze1kg9x5jeboTuP7cPgQivcAq1R6aTxpNQ== X-Received: by 10.55.156.19 with SMTP id f19mr10558002qke.61.1490717392089; Tue, 28 Mar 2017 09:09:52 -0700 (PDT) MIME-Version: 1.0 Received: by 10.237.59.147 with HTTP; Tue, 28 Mar 2017 09:09:51 -0700 (PDT) In-Reply-To: References: Date: Tue, 28 Mar 2017 18:09:51 +0200 Message-ID: To: Derick Rethans Cc: PHP Internals List Content-Type: multipart/alternative; boundary=94eb2c086e1a9dbd01054bccb0da Subject: Re: [PHP-DEV][RFC][VOTE] Allow abstract function override From: netmo.php@gmail.com (Wes) --94eb2c086e1a9dbd01054bccb0da Content-Type: text/plain; charset=UTF-8 Hi Derick, sorry, previous message was meant to reply to you. There is no BC break, not even subtle. Ocramius' assumption is wrong. The most authoritative one is the innermost and closest ancestor definition. It is like that for classes, it is like that for interfaces, should be like that for abstract methods as well. And it's just an assumption anyway. Substitutability rules define this and it is very straightforward to me: are the overridden signatures type-compatible with the super definition? Yes. Then it should be allowed; we should not care if it's redundant, we should not care if it has few uses, just keep it consistent, IMO. Use cases are the same of a type change in a sub-interface, which, again, PHP does allow, even if to/from no-type only for now. Regards. --94eb2c086e1a9dbd01054bccb0da--