Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:96876 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 10095 invoked from network); 13 Nov 2016 19:20:16 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Nov 2016 19:20:16 -0000 Authentication-Results: pb1.pair.com header.from=anatol.php@belski.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=anatol.php@belski.net; spf=permerror; 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:37976] helo=h1123647.serverkompetenz.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id C9/09-31581-BECB8285 for ; Sun, 13 Nov 2016 14:20:12 -0500 Received: by h1123647.serverkompetenz.net (Postfix, from userid 1006) id A918E782D40; Sun, 13 Nov 2016 20:20:08 +0100 (CET) Received: from w530phpdev (p54A76104.dip0.t-ipconnect.de [84.167.97.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by h1123647.serverkompetenz.net (Postfix) with ESMTPSA id 46AD6782D40; Sun, 13 Nov 2016 20:20:06 +0100 (CET) To: "'Levi Morrison'" , "'Dennis Clarke'" Cc: "'internals'" References: <0ca001d23d21$e033ec40$a09bc4c0$@belski.net> <8520e864-1b65-18db-7ce6-7b99343e03e3@blastwave.org> In-Reply-To: Date: Sun, 13 Nov 2016 20:20:02 +0100 Message-ID: <0f9201d23de2$f113de00$d33b9a00$@belski.net> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Outlook 16.0 Thread-Index: AQIQtcipy2v88QjTT84++ZJcp8nomAJNLz/bAmCgYFEBiRb3NwF2t885oBzBdgA= Content-Language: en-us Subject: RE: [PHP-DEV] C89 vs. C99 From: anatol.php@belski.net ("Anatol Belski") Hi, > -----Original Message----- > From: morrison.levi@gmail.com [mailto:morrison.levi@gmail.com] On = Behalf > Of Levi Morrison > Sent: Saturday, November 12, 2016 9:47 PM > To: Dennis Clarke > Cc: internals > Subject: Re: [PHP-DEV] C89 vs. C99 >=20 > On Sat, Nov 12, 2016 at 1:37 PM, Dennis Clarke > wrote: > > > >> IMHO, if we decide to move to C99, we should do it the strict way > > > > > > I forgot to add that GNU GCC allows a lot of non-standard extensions > > to slip right through. Unless some CFLAGS are set to warn or error = on them. > > > > = https://gcc.gnu.org/onlinedocs/gcc-5.4.0/gcc/C-Extensions.html#C-Exten > > sions > > > > Dennis > > > > > > > > -- > > PHP Internals - PHP Runtime Development Mailing List To unsubscribe, > > visit: http://www.php.net/unsub.php >=20 > We are actually much closer to C99 than we are to C90. As proof of = this try > compiling with GCC with `-std=3Dc90 -pedantic-errors` and then try it = with `- > std=3Dc99 -pedantic-errors`. You have to make significantly fewer = changes to get > the C99 version working (or at least this was the case when it was = last brought > up). Also, ISO C90 and ANSI (C89) are essentially the same thing in = case anyone is > not aware. >=20 Even without that - we already use inline, datatypes and macros, other = things that don't belong to C89. We also use _declspec(thread) aka = __thread which is not standardized at all. The GNU extensions, or VS = features, or any other compiler specifics, are same as before. What = matters, is the core C99 standard, or at least the part implemented in = any known compiler, as some #ifdefs for platform/compiler specific non = C99 features will always exist. While at the start, it'll probably be = only to make the current source to rock with C99 compilers and to be = able to use some syntax/semantic sugar, later contributions indeed using = any possible other C99 features will appear. That's the point I actually = wanted to make - moving to C99, we enable a set of new features not = available with the ANSI C, that we need to internalize and accept. Regards Anatol=20