Re: Warn when declaring required parameter after optional one

From: Date: Thu, 06 Feb 2020 11:40:26 +0000
Subject: Re: Warn when declaring required parameter after optional one
References: 1 2 3 4  Groups: php.internals 
Request: Send a blank email to internals+get-108410@lists.php.net to get a copy of this message
On Wed, Feb 5, 2020 at 1:15 PM Guilliam Xavier <guilliam.xavier@gmail.com> wrote: > Hi, > > On Wednesday, February 5, 2020, Nikita Popov <nikita.ppv@gmail.com> wrote: >> >> >> I like this idea and have updated the pull request to ignore the "Type >> $param = null" case, so the deprecation should now just catch the >> "definitely" incorrect signatures. >> >> So to summarize the current state: >> >> function test($foo = "bar", $baz) {} >> // Deprecated: Required parameter $baz follows optional parameter $foo >> >> function test(Abc $foo = null, $baz) {} >> // No warnings, works fine! >> >> With that adjustment made, are there any further concerns about this >> change? > > > Can you please just clarify which of the following will emit a deprecation? > > function f1($a = null, $b) {} > function f2(A $a = null, $b) {} > function f3(?A $a = null, $b) {} > > (I think f1 will, f2 won't, but f3? > f1 will, f2 won't, f3 also won't. f3 could technically emit one, but I'm not sure it's worth having a special case of a special case for this. Nikita

« previous php.internals (#108410) next »