Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:97636 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 2485 invoked from network); 9 Jan 2017 19:08:19 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 9 Jan 2017 19:08:19 -0000 Authentication-Results: pb1.pair.com smtp.mail=me@kelunik.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=me@kelunik.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain kelunik.com from 81.169.146.219 cause and error) X-PHP-List-Original-Sender: me@kelunik.com X-Host-Fingerprint: 81.169.146.219 mo4-p00-ob.smtp.rzone.de Received: from [81.169.146.219] ([81.169.146.219:22544] helo=mo4-p00-ob.smtp.rzone.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A9/EF-31343-2AFD3785 for ; Mon, 09 Jan 2017 14:08:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1483988894; l=3674; s=domk; d=kelunik.com; h=Content-Type:To:Subject:Date:From:MIME-Version; bh=8FYkn98AFV7sb4vAb1I8rAnkRxv8TFR+aZdpmX6kwJs=; b=U1ds9o8wbXozyWnkSI6G2Wn8vVNijgZpeWKb/5K0+QfPz9sCIJ1mMEZDTgUOakW8O5 7OcEhfSSyuA7gNYnjNZb5wFIjszSSCdVjC9idWByNkPVrfXBFuaRLvk944b+usPYQ9f6 WD54Um7/LLhFmHXVSOmmG5KO/Ivydp9ovP6LY= X-RZG-AUTH: :IWkkfkWkbvHsXQGmRYmUo9mls2vWuiu+7SLDup6E67mzuoBPBqD/sWo= X-RZG-CLASS-ID: mo00 Received: from mail-qk0-f171.google.com ([209.85.220.171]) by smtp.strato.de (RZmta 39.11 AUTH) with ESMTPSA id k0847ct09J8ErpS (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (curve secp384r1 with 384 ECDH bits, eq. 7680 bits RSA)) (Client did not present a certificate) for ; Mon, 9 Jan 2017 20:08:14 +0100 (CET) Received: by mail-qk0-f171.google.com with SMTP id s140so128098765qke.0 for ; Mon, 09 Jan 2017 11:08:14 -0800 (PST) X-Gm-Message-State: AIkVDXJucthpmGT83LBxqYPlwkZalK7k6ZATLe098UYoTrPKi2wmeqW1j8r2wpon8T2pF2+7vFDy0nFVyVuRkQ== X-Received: by 10.233.237.136 with SMTP id c130mr98474424qkg.160.1483988893842; Mon, 09 Jan 2017 11:08:13 -0800 (PST) MIME-Version: 1.0 Received: by 10.12.141.204 with HTTP; Mon, 9 Jan 2017 11:08:13 -0800 (PST) Date: Mon, 9 Jan 2017 20:08:13 +0100 X-Gmail-Original-Message-ID: Message-ID: To: PHP Internals Content-Type: multipart/alternative; boundary=94eb2c09830ede48210545ae1606 Subject: [RFC][VOTE] Parameter Type Widening From: me@kelunik.com (Niklas Keller) --94eb2c09830ede48210545ae1606 Content-Type: text/plain; charset=UTF-8 Morning Internals, I just opened the vote on "Parameter Type Widening", initially named "Parameter No Type Variance". RFC: wiki dot php dot net/rfc/parameter-no-type-variance Voting will keep open for three weeks and close on 30th of January, probably in the evening of UTC. You can find an excerpt of the RFC below. ---- PHP currently doesn't allow any variance of parameter types when checking whether a method implemented in a class is compatible with the method defined either in the parent class or interface. This RFC proposes to allow omitting a type entirely in a subclass, as dropping all parameter constraints is always valid according to the contravariance rule. Implementing this RFC would allow libraries to be upgraded to use type declarations in their method signatures. Currently adding types to a method of a class in a library would break any code that extends that class. This would provide an easier upgrade path for libraries to start using scalar types, to replace manual checks being done inside the methods, without requiring an update for all sub-classes. ---- Kind Regards and Happy Voting, Niklas Keller P.S.: The mail setup is still broken and rejects php dot net URLs... --94eb2c09830ede48210545ae1606--