Subject: Re: a new KNF (and some comments)
To: None <lukem@cs.rmit.edu.au>
From: Peter Seebach <seebs@plethora.net>
List: tech-misc
Date: 01/20/2000 19:17:53
In message <200001210050.LAA23301@wombat.cs.rmit.edu.au>, Luke Mewburn writes:
>* Update it to ANSI C (`c89').
>	we should be doing
>		port build environment to cross compile
>		build compiler with cross compiler
>		build userland with cross compiler
>	We have been offered the expertise of people who do this type of
>	cross compiling for a living (e.g, Cygnus) if necessary.

And, as I understand it, this has been part of the build process for some
ports.

>* Define block macros as
>	do { /* ... */ } while (0)
>  instead of 
>	{ /* ... */ }
>  so that a developer can put a trailing `;' on a macro (and treat it like
>  a function call).

Clarification:  So that
	FOO();
is a statement, not two statements, for purposes of
	if (condition)
		FOO();
	else

>	a) require new files follow the new guide
>	b) modify old source code when appropriate.
>	c) modify changed source files by:
>		- convert original file to new style, and commit first
>		- add new functionality, and commit separately.

>The last point, of course, is contentious...

I like it quite a bit.

-s