Re: astyle

From: Alex Rousskov <rousskov@dont-contact.us>
Date: Mon, 07 Jan 2008 10:25:42 -0700

On Sat, 2008-01-05 at 13:05 +0200, Tsantilas Christos wrote:
> I spend some time to run the astyle-1.21 on squid3 code. I tried to run
> it with the following parameters:
> --mode=c -s4 -O --break-blocks -l
>
> I am only seeing the following two problems:
>
> 1) The --break-blocks and -l option.
> Using these options the code:
> #ifdef SOME
> {
> ....
> }
>
> Converted to:
>
> #ifdef SOME {
> ....
> }
>
> Maybe we can omit these options ....

I suggest removing break-blocks both because of the above bug and
because it is trying to detect "unrelated blocks, classes, etc." which
smells too much like AI to me.

The --brackets=linux (-l) option is useful though. Can you check whether
there is another --brackets option that works without the above bug and
does the subset of what --brackets=linux does?

> 2) Bit fields in structs are not formated well.
> struct
> {
> unsigned int open:1;
> unsigned int close_request:1;
> unsigned int write_daemon:1;
> .......
> }
>
> Converted to:
> struct
> {
> unsigned int open:
> 1;
> unsigned int close_request:
> 1;
> unsigned int write_daemon:
> 1;
> ...........
> }

This cannot be disabled, right? If all bit-fields are "unsigned int",
perhaps we can run a simple pre-processor that will convert

    unsigned int foo : 1;

into

    unsigned int foo__FORASTYLE__1;

and then post-process the sources to undo the conversion?

Finally, please consider reporting the above bugs to astyle if nobody
has done that already.

Thank you,

Alex.
Received on Mon Jan 07 2008 - 10:25:51 MST

This archive was generated by hypermail pre-2.1.9 : Wed Jan 30 2008 - 12:00:09 MST