This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] Compare addresses in operand_equal_p correctly


On Tue, 14 Nov 2006, Andrew Haley wrote:
> Insert extra parentheses so that Emacs will indent the code
> properly. For example, the following indentation looks nice if you do
> it by hand,
>
>      v = rup->ru_utime.tv_sec*1000 + rup->ru_utime.tv_usec/1000
>          + rup->ru_stime.tv_sec*1000 + rup->ru_stime.tv_usec/1000;
>
> but Emacs would alter it. Adding a set of parentheses produces
> something that looks equally nice, and which Emacs will preserve:
>
>      v = (rup->ru_utime.tv_sec*1000 + rup->ru_utime.tv_usec/1000
>           + rup->ru_stime.tv_sec*1000 + rup->ru_stime.tv_usec/1000);

I believe that this is to prevent *always* aligning equal operators
under one another, when there's a good aesthetic reason, otherwise
this ends up as:

      v = rup->ru_utime.tv_sec*1000
          + rup->ru_utime.tv_usec/1000
          + rup->ru_stime.tv_sec*1000
          + rup->ru_stime.tv_usec/1000;

which is OK, but hides the utime/tv_sec/tv_usec symmetry.

I'll agree that if you need to place operators of a multi-line
conditional the same line, such as:

	return a->x == b->x && b->x == c->x
	       && a->y == b->y && b->y == c->y
               && a->z == b->z && b->z == c-z;

Then using parenthesis to avoid emacs auto-indent screwing things up.
[But perhaps emacs has been fixed since then, I use vi :-)]

Roger
--


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]