On Wed, Dec 05, 2018 at 11:37:27AM -0600, Segher Boessenkool wrote: > On Wed, Dec 05, 2018 at 10:04:56AM +0000, Richard Sandiford wrote: > > Martin Sebor <mse...@gmail.com> writes: > > > Martin suggested we update the Coding Conventions to describe > > > the expected style for function declarations with a pointer > > > return types, and for overloaded operators. Below is the patch. > > > > > > As an aside, regarding the space convention in casts: a crude > > > grep search yields about 10,000 instances of the "(type)x" kinds > > > of casts in GCC sources and 40,000 of the preferred "(type) x" > > > style with the space. That's a consistency of only 80%. Is > > > it worth documenting a preference for a convention that's so > > > inconsistently followed? > > > > Just to be sure, does that grep include things like the go frontend > > and its GCC interface, which deliberately don't follow GNU conventions? > > A crude grep for me gives 92% consistency in gcc/* itself (excluding > > subdirectories), although that's still disappointingly low... > > I get: > > $ grep '([a-zA-Z_][a-zA-Z0-9_]*)[a-zA-Z_]' *.[ch]|wc -l > 454 > $ grep '([a-zA-Z_][a-zA-Z0-9_]*) ' *.[ch]|wc -l > 28690 > > (that's gcc/*.[ch]). About 1.6%, not so terrible. > > $ grep '([a-zA-Z_][a-zA-Z0-9_]*\( \?\*\+\)\?)[a-zA-Z_]' *.[ch]|wc -l > 631 > $ grep '([a-zA-Z_][a-zA-Z0-9_]*\( \?\*\+\)\?) ' *.[ch]|wc -l > 29426 > > With pointer casts it is worse, but still only about 2.2%. > > Files other than *.[ch] will probably have many more false hits?
Ugh. $ grep '([a-zA-Z_][a-zA-Z0-9_]*\( \?\*\+\)\?)[a-zA-Z_]' *.[ch]|wc -l 631 $ grep '([a-zA-Z_][a-zA-Z0-9_]*\( \?\*\+\)\?) [a-zA-Z_]' *.[ch]|wc -l 3875 (REs, like all sharp tools, are dangerous). 14%? Ouch. And lamely filtering out some comments makes it only worse. Segher