From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: GCC 4.9.1 suggests -std=c99 Date: Tue, 09 Sep 2014 10:11:39 -0700 Organization: UCLA Computer Science Department Message-ID: <540F34CB.80202@cs.ucla.edu> References: <540F0EEE.6080603@yandex.ru> <540F15AE.4040106@cs.ucla.edu> <83vbowal4h.fsf@gnu.org> <540F1B12.2070603@cs.ucla.edu> <83tx4gaj41.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1410282761 27383 80.91.229.3 (9 Sep 2014 17:12:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 9 Sep 2014 17:12:41 +0000 (UTC) Cc: dmantipov@yandex.ru, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Sep 09 19:12:34 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XROxt-0001ra-6q for ged-emacs-devel@m.gmane.org; Tue, 09 Sep 2014 19:12:25 +0200 Original-Received: from localhost ([::1]:50984 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XROxs-0006Wp-N0 for ged-emacs-devel@m.gmane.org; Tue, 09 Sep 2014 13:12:24 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43760) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XROxZ-0006We-Uk for emacs-devel@gnu.org; Tue, 09 Sep 2014 13:12:13 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XROxS-0000Gp-Bv for emacs-devel@gnu.org; Tue, 09 Sep 2014 13:12:05 -0400 Original-Received: from smtp.cs.ucla.edu ([131.179.128.62]:35293) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XROxK-0000Cm-3U; Tue, 09 Sep 2014 13:11:50 -0400 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id F2DB539E8014; Tue, 9 Sep 2014 10:11:48 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Original-Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id REfqJVsRwxD7; Tue, 9 Sep 2014 10:11:40 -0700 (PDT) Original-Received: from [192.168.1.9] (pool-71-177-17-123.lsanca.dsl-w.verizon.net [71.177.17.123]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 00B6BA60002; Tue, 9 Sep 2014 10:11:39 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 In-Reply-To: <83tx4gaj41.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 131.179.128.62 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:174124 Archived-At: Eli Zaretskii wrote: > we should have discussed whether to use these C99 features > before actually starting using them. We discussed them in Bug#17487. As I mentioned, Emacs developers routinely made changes that used these features, I was occasionally auditing the code and removing their use for no practical reason (only because of standards-conformance issues), and I got tired of this pointless task. My guess is that when Michael Albinus introduced the 'for (int i = 1; ...' loop in trunk bzr 117771, he wasn't consciously thinking "Oh boy! I get to use C99 now! I will now change Emacs's style!" Most likely he was just using a common and natural idiom that worked for him, and didn't notice that it wouldn't port to C89 and was therefore contrary to Emacs's old style rules. > Emacs definitely has certain > coding style, which doesn't include these. The part of Emacs's style that disallowed these C99 features was there primarily because of C89's restrictions. It's often not the best style and we should not insist on it. I agree with Dmitry that we should not insist on a declaration as the first clause of every for loop, but there doesn't seem to be a good reason to prohibit a declaration there, whereas there is a good reason (more-accurate scoping) to allow it.