Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:86154 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 15067 invoked from network); 11 May 2015 08:47:13 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 May 2015 08:47:13 -0000 Authentication-Results: pb1.pair.com smtp.mail=anatol.php@belski.net; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=anatol.php@belski.net; sender-id=unknown Received-SPF: error (pb1.pair.com: domain belski.net from 85.214.73.107 cause and error) X-PHP-List-Original-Sender: anatol.php@belski.net X-Host-Fingerprint: 85.214.73.107 klapt.com Received: from [85.214.73.107] ([85.214.73.107:36534] helo=h1123647.serverkompetenz.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id F8/C0-03799-E8C60555 for ; Mon, 11 May 2015 04:47:11 -0400 Received: by h1123647.serverkompetenz.net (Postfix, from userid 33) id 93DEE6D2035; Mon, 11 May 2015 10:47:07 +0200 (CEST) Received: from 87.159.63.194 (SquirrelMail authenticated user anatol@belski.net) by webmail.klapt.com with HTTP; Mon, 11 May 2015 10:47:07 +0200 Message-ID: <511c777d7172088f8d0768c9dd2615e0.squirrel@webmail.klapt.com> In-Reply-To: References: <71A78449-A62C-400D-A01F-5668930A7BED@ajf.me> <554BDC4B.2010808@gmx.de> Date: Mon, 11 May 2015 10:47:07 +0200 To: "Levi Morrison" Cc: "Pierre Joye" , "Nikita Popov" , "Christoph Becker" , "Dmitry Stogov" , "Andrea Faulds" , "Julien Pauli" , "Derick Rethans" , "PHP internals" User-Agent: SquirrelMail/1.5.2 [SVN] MIME-Version: 1.0 Content-Type: text/plain;charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: Re: [PHP-DEV] Thoughts on C version supported for PHP-Next From: anatol.php@belski.net ("Anatol Belski") Hi, On Sun, May 10, 2015 22:01, Levi Morrison wrote: >> Again, this is a C11 feature. It is supported by clang, gcc and MSVC. >> > > To clarify this a bit: they permit anonymous unions in C89 and C99 > code (meaning you do not need to pass flags like -std=c11 to enable it). > particularly regarding VS2013/VS2015RC more is readable here http://blogs.msdn.com/b/vcblog/archive/2015/04/29/c-11-14-17-features-in-vs-2015-rc.aspx . One should keep in mind that it's C++ oriended, therefore C99 is just a partial side effect by luck. Not even talking about C11 or newer which might be far more incomplete than C99. Another factor is dependencies handling, as well as C++. So far ICU isn't good playing with C++11 for example. So while C99 were clamed to be supported and were nice, still many things need to be carefully checked. Also besides syntax, there might be some breaking platform API changes. Is there already some repo one can compile? It might have sense to compile that repo with any possible compilers on any possible platforms of interest, and then make an informed decision about C99 when having that data (in RFC?). It could be also defined not as C99, but as C89 with some extended features, to be more precise (but would be a question of definition when there's more data). Once we have that repo, we could ask people to do test compilations on different platforms and supply the results. Regards Anatol