Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:124713 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 100881A00B7 for ; Fri, 2 Aug 2024 10:32:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1722594824; bh=9ZIazEgKaazN/reI5RSzV8D7czHTrXmz7Qh/RqxkPz8=; h=Date:Subject:To:References:From:In-Reply-To:From; b=ePtYFiNV0hSJnh/T6Y9D4FNoDhL40ggRbcOSSfqBPEGEXQe+A8dUxIIFVFaMZUcrf 13XrhCuZFhu3IFziIHu/plZggtZWziNvOQWH4MFvsjuFOpiUixeyrQgBYQD1woMmwu ArEfCel/apSVwt3O3u3rro9q6Bh+409ocH/hCg2RTcOQZdMhqKYwWg6D5o9D/A55T5 KLZ8Wsvb4URfWv4T9SGUHgwVgE6S339u09z0EzTeTdigiLY9etvZgIFaA+z961KGBD A7Vwa25ejeBbZOzhd09D6E5WcIjLncWbYJv3xf7HYY1jjF8It6Oc4W/kgKPPr8nmkC +hP7eGZVGBmVg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 5EECE180069 for ; Fri, 2 Aug 2024 10:33:43 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 2 Aug 2024 10:33:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de; s=s31663417; t=1722594721; x=1723199521; i=cmbecker69@gmx.de; bh=CHC1Tz0JfS3rHaBZULcD91F/VxWD2yqbISJ90QkdqEM=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=Po5rG8M7IwNV+DqE6nmCNP52yTVD/HG5Q4ECC12xcFY5OD7J2w7uQT8kgP6NBl1S es12aIPurftYJut4RlbVvzHueBZodhZfUb1QSnEBavHORzrrawD1sbtesCfMTF/Ai +036bEu2ajWKE7ZuHPsTQASHZATljcm7WsO5AUbyjdpYrjJZRhH22INHTnJt1+zYd 1CHQ+quVFxtN7Miua+G0BQJGOAsl/qI2Qb5ThZQ2bFBaIIeM881+mNv+bt78avghj GPzN34S3Yxl719QuxIXaNacTzouJMuk7RUALIfpfpoNq/EH8oKUs7nKV67vhP9pxB r18TEjUqOX4RAxHTLQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.2.130] ([79.251.205.37]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MuUnK-1sIiOp1K66-0104XV; Fri, 02 Aug 2024 12:32:01 +0200 Message-ID: Date: Fri, 2 Aug 2024 12:32:01 +0200 Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PHP-DEV] Require C11 in PHP 8.4 Content-Language: de-DE To: Ilija Tovilo , PHP internals References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:x8hKz5tszMCcV/B5DVzkOQht6Dw93exVgBYbf3bexJ5tSN0EJN4 kQtnvAnPyS4l/TH3BifTEIfyDEIENd6wBSDUQzrPXVHesDH9IOTnPDZa1iX0+xWb2SqIByA t9uGWD9Wn/yj0WQmG5bL2Z3PVvPr6IfqslzpTXW0FLwFFvKrybdzq1vNtWK+UbiY87rA6Qj 9nzY6D02yFcAW8fluHQmA== UI-OutboundReport: notjunk:1;M01:P0:JS/rahVi72c=;ANRLOgLBAxe7qkSSRBplEit+3Ms h5uTdN6gGCU/S3CsOaSlMAVrNtWsypg8/xFLtwDl7f9xx2VrnFQyx0ro/8JBfbDAXBOLXVNK7 1KLRDIwI0mrVe2rlSTA3Rg9ngnMb90ZYb2Fb8XrWU9nDOVj2WEMULBTVzMNPV3EAZenuu0CKE 7gk2cZOglpPRxq/nuVNXk8vIYaHA/wGETWgP2fGCvCC3ARY0WcqG6sjtGEdm1mr6e6DzqNF2u Hglu8azXwniczuWVpcLpb0wGVbzq+Yi1CxpRbvaxhPztwWo4uZEygzGUu1eq0XT2UI+hdHNPO g64gBMHpApNPGuQbpDT/I1aQUFCIJlHtpm8Hp6jsQDnq9itoVW9XX5ys+BjmLn5hJXZt4nv1m LKkSU01YkMYbb27BxnpeLTIMzy95N7KZMU9/7djNN7+8QyC2pg0132EO1PGM4SKyNnEIvqsyc KkfKdS/bka0O28UD1NxigK9YSiQTck71oSTdSn7K8C2BxFBZdMUsexWyX/FL8Oz/bYmfILA9t /ByHmc84fACDa5gNVgXz/DMS2Z3czXkXpvM//vMe0zH7PIoRr5HSamfmyWbvrpjE9NL2awYJT iM2h/NTJqVx6eTdQ0g8G9efQ6roQ73kTioE3oJgBMq8/w+PhpwPxA/Ez9/ubeP28VqAXtuxfR 2OMaF7mFLkQzJLHXuCAjTVDcHbhQ+eT+yuJJegfWoPdjvZ9hbx8MIyZB0iYIsRLqHloQbzImT 5fZmN0FodeSDnQqPCNxC0eFDWLYtJUduZBor2ja6HPYZAUtNsJHmNVD99bzwMdRTMRvvkF1DP JwC7e90iKCOAjW+USDpPD3z5CT3JUt5zIU7tK6N/ktO2s= From: cmbecker69@gmx.de ("Christoph M. Becker") On 01.08.2024 at 23:57, Ilija Tovilo wrote: > [=E2=80=A6] The biggest blocker in the past was MSVC, which has finally > added C11 support in Visual Studio 2019 [8]. Technically, Visual > Studio 2015 and 2017 are still supported by Microsoft [9], but > according to Christoph they are no longer used for PHP builds since > version 8. Right. As of PHP 8.0.0, VS16 (aka. Visual Studio 2019) is used for the builds, and as of PHP 8.4.0, VS17 (aka. Visual Studio 2022) is supposed to be used. Of course, users may still use an older Visual Studio version, and want to be able to still build latest PHP, but they still can install a newer Visual Studio version in parallel (and at least, using only the Buildtools for Visual Studio 2022, shouldn't be a concern regarding the license, because they are free to use to build Open-Source software, and should be totally sufficient to build PHP and extensions). There might be a slight glitch, namely that a few users want to include some PHP modules into their software (e.g. the embed SAPI); that might cause issues, but on the other hand, nobody should expect to work some latest Open-Source software version to work flawlessly with older versions of other software. So these users (if there are any) could still work with PHP 8.3, for instance, until they upgrade to Visual Studio 2022. > Hence, it seems like it would be ok to bump our C compiler requirement > to C11. We'd like to make this change before beta 1 if there are no > objections. There are no immediate plans to make non-optional use of > other C11 features, although that is conceivable at some point. I'm all for it, given the alternatives would be worse, and presuming there is no real show-stopper. > Another benefit brought up by Christoph is that C11 relegated the > requirement for the compiler to support VLAs (variable-length arrays) > which was never implemented by MSVC, technically not complying with > the currently required standard. Indeed, that caused a couple of issues in the past, not only for php-src, but also for extensions. Requiring C11 support might help developers to detect that early, and choose an alternative implementation right away. > [8] https://devblogs.microsoft.com/cppblog/c11-and-c17-standard-support-= arriving-in-msvc/ > [9] https://learn.microsoft.com/en-us/visualstudio/productinfo/vs-servic= ing Cheers, Christoph