Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:97106 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 30156 invoked from network); 21 Nov 2016 11:59:08 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 21 Nov 2016 11:59:08 -0000 Authentication-Results: pb1.pair.com smtp.mail=cmbecker69@gmx.de; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=cmbecker69@gmx.de; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmx.de designates 212.227.17.22 as permitted sender) X-PHP-List-Original-Sender: cmbecker69@gmx.de X-Host-Fingerprint: 212.227.17.22 mout.gmx.net Received: from [212.227.17.22] ([212.227.17.22:57842] helo=mout.gmx.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 8F/00-29346-981E2385 for ; Mon, 21 Nov 2016 06:59:07 -0500 Received: from [192.168.1.190] ([217.82.239.250]) by mail.gmx.com (mrgmx103 [212.227.17.168]) with ESMTPSA (Nemesis) id 0M8e5P-1cuj8o3JuF-00wEVM; Mon, 21 Nov 2016 12:59:01 +0100 To: Niklas Keller , PHP Internals References: Message-ID: <05c849b4-5d84-f77b-7fdb-09ecbe9dc07e@gmx.de> Date: Mon, 21 Nov 2016 12:59:14 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:nfbzirJDCiNrgtm1jhlOd2AP+59qoXHwLPSWihI5QP1x9gXCRRb xev/cccNG67JoNPq+ruAXHVz1AgmNf2IbDe7F/OxzVSKVo1Q0DwXMe8RGNaI0xRgJ3D4qNO ZtRUnZ66gHBPhKONoFIOHX3k3TnjdWtZhLSRdvJeY3JcFwIkOgfUZr9dDXOEzK5v/ii2uVt iRSzQEjuZ64h4eMSu5CpA== X-UI-Out-Filterresults: notjunk:1;V01:K0:6C63hYM55RU=:uSLQsZJ1S46Jxq4qztDiPK YWuH39FQDrNk2y+hL4g4JXyJ2+j0xc0JXeN35bL8jYUWCs7+fuFtq6loG6ICOxMv2+J6gow/d u59Yhix3+CX5GxX4dRbbhmqiBUkdl04UICC7TWu/IIdqZzPN0/qh92tW/H4GXz9pSUqmSq/8s Et0Jy/6WVtTDkkMLD1Ww+aWHosof74UlOIbLqc6yiRXnoJOnnExQs88KLiZo48a5F6T6xXAgl V1JpmeZoH7V+tT+TML9KlbiU+GQQbCWq0dfqadDjQt0Es65IdvslFNkDhLj/D49ocAl5UAeRH 2Cbgsz41JyQpV+Jgj7KJB9qhi9wzVe0famgoq+CNBi7s/aMYvD76iz0Fl0a5uv3sPMX9WRUHi cUVK+8oP+qlZLkw5zgmnqr9xeYNLoOSDs70I/E9MhJAftwtUAN47snQuxFl/M9Bus4A2YyVvm gmr8iNofO7MC4oU0bgdjczAdxdVB1q8MFS8els4fWKfHBU00X6nCzS5hj8f1XS+ZtVPFQzzDY khk98ponRrBcF01exqtnOOINMc/k3a+uZxtYp5C52Ik6CvZoRpqei1zzwgU7KWL+QXE04XNwB C75HDOVv8VIahX91JMzLs9tTBCma6nY0SaZ15/GeG9/TYcCIC1IBKOLja3Fp6b+ATrr4qLfa+ PnawQx4KZ/KigT9wRwdWsfkbroWQ0TJbwRXsI1ynqG/050nX1BblVFdLCApWE1fN3jBz5Cw3Q 9L/PlGZ1uqNhoRyu+oVNnGYNPvKtZGLiODVCX9QBqM0zjedywPrvxrF9LDOHFQ/g4cWif3e+3 kGJujMS Subject: Re: [RFC] Parameter No Type Variance From: cmbecker69@gmx.de ("Christoph M. Becker") On 21.11.2016 at 10:39, Niklas Keller wrote: > I'd like to announce a RFC to allow omitting the type declarations for > parameters in subclasses: > https://wiki.php.net/rfc/parameter-no-type-variance > > PHP doesn't currently allow variance for parameters as checking these for > compatibility isn't possible on compile time. > This limitation is caused by autoloading and doesn't allow widening the > accepted parameters. > > This RFC proposes to allow ommiting the type entirely in a subclass, as > dropping all parameter constraints is > always valid according to the LSP principle. Have you considered that instead of simply omitting the type declaration, one would have to mark the omission explicitly, to still get a compile time warning in case of unintended omission? -- Christoph M. Becker