X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Ironport-SBRS: None X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2HwBwAMiiZW/52AA4BdgzYfNW+CXLtUgVohhX0CgUA6EgEBAQEBAQEDgQeCWzwBAQEBAQEjAjoyAQEEOk8LGAkTEg8FDTwTGYgCAxIFCL5rDYR+AQEIAgEghneEfoJQgkSDGoEUBY4HiB2LKYFulF2HTCgDOIQjHjSFZwEBAQ X-IronPort-AV: E=Sophos;i="5.17,708,1437462000"; d="scan'208";a="2744743" Date: Tue, 20 Oct 2015 11:41:44 -0700 From: Larry Doolittle To: "Britton Kerin (britton DOT kerin AT gmail DOT com) [via geda-user AT delorie DOT com]" Subject: Re: [geda-user] C99 Message-ID: <20151020184144.GA17357@recycle.lbl.gov> References: <20151019205802 DOT GA6798 AT recycle DOT lbl DOT gov> <20151020180706 DOT GC16826 AT localhost DOT localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20151020180706.GC16826@localhost.localdomain> User-Agent: Mutt/1.5.21 (2010-09-15) Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Vladimir - On Tue, Oct 20, 2015 at 09:07:06PM +0300, Vladimir Zhbanov (vzhbanov AT gmail DOT com) [via geda-user AT delorie DOT com] wrote: > On Mon, Oct 19, 2015 at 01:58:02PM -0700, Larry Doolittle wrote: > > -O2 -Wall -Wextra -Wshadow -pedantic --std=c99 > > and the --std=c99 part explicitly allows declarations after statements. > > I don't know what to suggest if a compiler doesn't follow an ISO standard > > 16 years after it's published. > > Probably I have an opportunity to ask a question about the C99 standard :) > Are any issues mentioned at [1] still relevant? Could any issues appear if > we start to support it? > [1] http://www.kuro5hin.org/story/2001/2/23/194544/139 I don't see anything there that is a problem for people writing production code. Except for the compiler availabilty thing, and I'm pretty sure that has gotten (slowly) better over the last 14 years. My personal experience with C99 vs. C89 is that a much larger faction of a project's code base can be categorized as portable, standards-compliant code when using C99. Several of the features called out there, like "long long", variable macro agruments, variable length arrays, are things that used to require non-standardized syntax and compiler features, but represent functionality that real-life code sometimes needs (or at least really really wants to use). - Larry