Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:96842 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 70824 invoked from network); 12 Nov 2016 11:10:19 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 12 Nov 2016 11:10:19 -0000 Authentication-Results: pb1.pair.com header.from=kalle.php@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=kalle.php@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.214.52 as permitted sender) X-PHP-List-Original-Sender: kalle.php@gmail.com X-Host-Fingerprint: 209.85.214.52 mail-it0-f52.google.com Received: from [209.85.214.52] ([209.85.214.52:38722] helo=mail-it0-f52.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 4A/DF-35596-898F6285 for ; Sat, 12 Nov 2016 06:10:16 -0500 Received: by mail-it0-f52.google.com with SMTP id q124so25225495itd.1 for ; Sat, 12 Nov 2016 03:10:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=zAbkDNhYtkDNJ5Kw2ZEj+gXgdSBLBPhTKWUcIMS8bvU=; b=GGb6gq3NeDLaLNcujOu8kfVS+fQs6P9hJE+3J8Y5XJJIFoK1Hkz6/4OxsR6MQ0ls4x FxVGofcOA88uA8hLJrl5/1I5Y7+lUMv/lNhdwl9aG7egs1hkCjJQ3BjbzbnVq2s591iD Cwe7FSp+xjlrYbxEX1qtqUDbdHaK4byVesfgD8XYp8LG0jvTOxRLCDl1w+pC9Fq6JeNB II7h6K/9DUlhMwnHVP45M0trs8nujWUDkOknC29qxFZltrI49gdUc/KS3nXUNpSu0Nr1 S1+Ic4xdugkBMpmNlNqKQcgJUsW3XpNW6he7urRA6BWwiAErORKJzewbDdKiZdYJHXql Lfuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=zAbkDNhYtkDNJ5Kw2ZEj+gXgdSBLBPhTKWUcIMS8bvU=; b=JrSFMaetV9NLQPp9Bb82zXUNqTxpb9vW10G5KJP9pMmRnT9aSlLxWiyZ5GOjIacVOd dBLeC1dMZi2iP0SRh+EWpbRhvNhKIW+jfV2JMq7cscn1phTcNFIDMll+ruDQUFCnPqjS fGNy+tsVyMUc1YHx8fw+o5ZqhhwyunTqr/ZAHmbFgxBrcZM1mhgCwgGMAPbqRHzNQDGh huJnyXY3v1zd8I9lEjfxDOlvTNJRcgKpTvma1de3Ojh/eWJ44Bvwh6liFK8G+Qct9l50 XCM3ILS1q9QM1lVsPL7N8Gn7Wy2SSfQBQU0ZfPkBf1OA6dVSPDibYja7mYhhG/5ek/nf vuaQ== X-Gm-Message-State: ABUngvcyGa4iMCWQTWnJZIZP2Sv/I2owMqHFxVll20yVenE/X1nEr7Tx80IyKSGALiqfohZauSFm4SMqMIV2AQ== X-Received: by 10.107.137.20 with SMTP id l20mr15682294iod.75.1478949013838; Sat, 12 Nov 2016 03:10:13 -0800 (PST) MIME-Version: 1.0 Sender: kalle.php@gmail.com Received: by 10.107.138.234 with HTTP; Sat, 12 Nov 2016 03:10:13 -0800 (PST) In-Reply-To: References: Date: Sat, 12 Nov 2016 12:10:13 +0100 X-Google-Sender-Auth: jh-Yuxj1LMzcVzU2vXmpKmAHYW8 Message-ID: To: Nikita Popov Cc: PHP internals , Anatol Belski Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] C89 vs. C99 From: kalle@php.net (Kalle Sommer Nielsen) 2016-11-12 11:57 GMT+01:00 Nikita Popov : > It's time to bring this up again. I recently noticed that nowadays only > Kalle fixes Windows build issues due to C99 declarations-after-code, while > Anatol doesn't. Am I correct in the assumption that Anatol is using an MSVC > version that supports the necessary subset of C99, while Kalle uses an > older version that doesn't support this yet? If so, is it viable for us to > drop support for these older MSVC versions for master? I'd really like to > be able to use certain C99 functionality (okay, I'm only really interested > in declarations mixed with code). I use VC11, which is the compiler used for 5.6 builds, technically its on our list to drop support for in 7.2+ I think was the plan, while Anatol uses VC14+ mainly, which is the compiler used for 7.0+ builds. So technically I shouldn't really be using VC11 for 7.0+, but on my current small setup, I have only configured VC11, but I plan on fully upgrading to VC14 only soon, as 5.6 does not have much active development that cannot be done on VC14. According to Wikipedia: Visual C++ 2012 and earlier did not support C99. Visual C++ 2013 implements a limited subset of C99 required to compile popular open-source projects. Visual C++ 2015 implements the C99 standard library, with the exception of any library features that depend on compiler features not yet supported by the compiler (for example, is not implemented). And ofcourse the version mapping: VC11 - Visual C++ 2012 VC12 - Visual C++ 2013 VC14 - Visual C++ 2015 So as long as future developments are compatible with VC14, its fine with me -- regards, Kalle Sommer Nielsen kalle@php.net