Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:117552 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 67709 invoked from network); 20 Apr 2022 15:52:59 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 20 Apr 2022 15:52:59 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 5079C180550 for ; Wed, 20 Apr 2022 10:26:46 -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.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,NICE_REPLY_A, RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS8560 212.227.0.0/16 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (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, 20 Apr 2022 10:26:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1650475603; bh=NGlSJzZs8j/hgRzIW/xpD1qTCzFe2tPanVhEiU7L1dA=; h=X-UI-Sender-Class:Date:Subject:To:Cc:References:From:In-Reply-To; b=OhoDd8STSV1gs6pmS1pa0uZAMEQEmSW9TWYSKSV80HrpKxZx4C9PIl+TvBvNfFbha zbOYuAp1ViY/yChWgC7Nsa4AdbEyKOH1Dh1ENxOAvSqkSboPbthF5EUhPx9tpSB4Mt PJuv4uTFtvr+bXy5hDke2ooF+FxTrPUP0/NgyYcQ= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.2.130] ([79.251.216.99]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MbRk3-1oJ2xW0fzV-00bsL5; Wed, 20 Apr 2022 19:26:43 +0200 Message-ID: <885e9419-15fa-fffb-5d6f-7427705a0400@gmx.de> Date: Wed, 20 Apr 2022 19:26:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.8.1 Content-Language: de-DE To: Craig Francis , Rowan Tommins Cc: internals@lists.php.net References: <42D0A480-F262-4F72-9C4D-887762A8D800@gmail.com> <0b061f28-a087-efd3-8602-424ee03458e0@gmail.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:I+WjG1lUfdy34jJgq4iTm+zuVI8tGf3Z3QEYf7xTWkkuyMSrTVP 4RoH5jx3774NGjWxUl4W6triIq0EFiKer1jZzzKaTGucCdm6JMSzBPaYXAYzRHnw4VmhZM/ n4I1r3uivGUvxiw/XYvYXV/9DhzZPkkkWBOQH50poXyUtr6vjAPTwlAedNSungaU3YZh9E1 +MZxgJjzYOlJN2SX2Rt/Q== X-UI-Out-Filterresults: notjunk:1;V03:K0:ru/K8UQkCJ8=:IN0JrqhWwpD9I1aSP/6+xR 8Gu3L+TO+D07VObHj5IrHnOw26c9/fE3T5KC524Fe75CR2bg8K0KPWnZhxcJZkcxqAV4mZJWV MlQArkmvAZ8LKHZ7XyyZKf9U67YwRjDGFHSIwS4ZGWnDKHDU4rjzDI+hYcEt3pK3oY2wncr/K Qx+ZJFAFw1AI5UoiteYIIE5BANX8DmFnZc39M+aZMm9tNv+WmDHrSvuS4PJhm6zdEzPytYwof 1Sg6zA1nHj/G6vJP1uWcUmtO+8EAYy177LKBYqL7GAWGOeJdRh7fj1aN4amevCsBnK+7/Ios6 pRTzZIbAKBQR3qTK4WfshskDPal83GC11c3veG/yXWG376fEvSltjNIaa8eYFT8E9iewlDUUc hQwO5ObG+gOW04/XaXI7ICEgAF5lOhSR6HAoJI/tW95xxzhjz72t2LQ8tsTeeX1a0EcJYostA m3G1/+PYeWL2TpNey70JNN0gmNASwNa3hVZM8aP6G0emF7olQ6/zc+3YAwX2Zac5/xZh7TmDQ jHVwiE5HO0kPdzmFEhLAFdTdnV34Xe/0lM7s71hO7SJSIK6xM3KdkFq/XW3NWUCiUtq/JWi8s UH2EHIdLyrF2okw/weXVFUheG7wsYzFJBuYS10M2OH9XGhDIpvjBFLqcpwlbyY7eHJtkCrMmb cP+CiLETSxmGxsPHwmjwWlFydMUQTcE/gtkmc4tmH26oPxpMa5qIVryiX966ezjuX8sDE5Hg2 mCuoWf1leHrqGx9pT8pOe+5fyroN7NeA7FoKVa4MWzbrGCCPUN0kNJD8CwjDRLyr7YkSe2kjD zzcmb9OVm5C5bYL+nGl4qq218gMEQ4jbkirQXWZNJpRcjEcNiE8IRe3KnPGQMvoEG6jKs2pRT VNrAhhowXGBvuRLOs/QzQ417lmgFOPa8su8siopNqLhpZVqci+VYBVvoF2TqNiUi9uXScVMPi YcD31NA+eayOMJABtp+OtSZqBQEn0W4v+wgQi/9S1mubtrhRcXIsXQCRR+WJ8QfjdinBDwAJg bUWRkrV7BHsAL/fMGdlFHSWpVp0EXaOvv9Bt46BC2CcT+8jj44uyluQpuoZ3I0O3zIel0yndV koSLCiuPDtkQTI= Subject: Re: [PHP-DEV] NULL Coercion Consistency From: cmbecker69@gmx.de ("Christoph M. Becker") On 20.04.2022 at 19:02, Craig Francis wrote: > In contrast, failing early at runtime, on something that is not actually= a > problem, like the examples in my RFC, creates 2 problems (primarily > upgrading; but also adding unnecessary code to explicitly cast those > possible NULL values to the correct type, which isn't needed for the oth= er > scalar types). Null is *not* a scalar type[1], though. This is the reason why it is not coerced for userland functions using *scalar* type hints with coercive typing. [1] =2D- Christoph M. Becker