[RFC][4.4] Conversion of tree.h STRIP_* macros into static inline functions
Tom Tromey
tromey@redhat.com
Thu Dec 20 18:07:00 GMT 2007
>>>>> "Diego" == Diego Novillo <dnovillo@google.com> writes:
Diego> On Dec 19, 2007 2:21 PM, Tom Tromey <tromey@redhat.com> wrote:
>> IMO we should pick a set of GNU indent flags and declare that to be
>> our official coding style. Then developers can run indent before
>> patch submission and be confident in the results.
Diego> Yes! I'm all for mechanically-imposed indenting styles. Even if it
Diego> looks like someone sneezed on the screen. I take consistency over
Diego> beauty.
Encouraged by this, I experimented with GNU indent yesterday. I ran
it over gcc/java, using both 'indent -gnu' and 'indent -gnu -bs'. (I
went through all the documented indent options and I think the closest
fit for us is actually 'indent -gnu -bs -nsc'.)
Unfortunately, I think the result is still not suitable for us. There
are a number of problems. Some are minor, but others are pretty
severe:
* I once had it emit an error and truncate a file. This is a show
stopping bug.
* We need to pass a -T option for every typedef. Otherwise some
things are formatted oddly. For instance, without '-T tree', a
declaration might look like "tree * foo" (instead of "tree *foo").
This isn't a huge problem but it does mean we'd have to maintain a
list of typedefs, or live with weird formatting in some places.
* There is no way to get it to handle certain spaces in the gcc-style.
There's no option for "no space after !". It always formats
bitfields with no spaces around the ":".
* It gets confused by some gcc macros. A GTY or a VEC will mess up
indentation for parts of a file. FOR_EACH_BB and the like are not
formatted "loop-like". Finally, it doesn't handle attributes very
well.
* lang-specs.h came out looking very bad.
I'll try reporting some of this to the indent maintainers and see what
they come up with.
Tom
More information about the Gcc-patches
mailing list