This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB 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: New ARI warning Sat Mar 12 01:53:29 UTC 2011



> -----Message d'origine-----
> De?: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Eli Zaretskii
> Envoyé?: dimanche 13 mars 2011 11:24
> À?: Pierre Muller
> Cc?: gdb-patches@sourceware.org
> Objet?: Re: New ARI warning Sat Mar 12 01:53:29 UTC 2011
> 
> > From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
> > Date: Sun, 13 Mar 2011 09:21:35 +0100
> >
> >   This is the consequence of the two new ARI rules I added:
> > http://sourceware.org/ml/gdb-patches/2011-03/msg00654.html
> >
> >   As I just introduced these new rules,
> > I felt that it would be cheating to
> > use OBVIOUS rule as we normally do to fix
> > a ARI regression...
> >   This is why I will submit shortly two patches
> > to remove all those new warnings.
> 
> The rule to detect "()" without a "void" is fine, but why on Earth do
> we need the other rule, about prototypes like this:
> 
>   int
>   foo (bar);
> 
> This is a perfectly valid formatting.  In your patch, you modify long
> prototypes like this as follows:
> 
>    extern struct hppa_objfile_private *
>   -hppa_init_objfile_priv_data (struct objfile *objfile);
>   +  hppa_init_objfile_priv_data (struct objfile *objfile);
> 
> But that is not a good idea, because if you type TAB in Emacs on the
> line with the function name, Emacs will reindent the name to column
> zero.  So I expect this rule to annoy us quite a bit, e.g. if someone
> reindents a large region.
> 
> Can you tell why we need this?

  See
http://sourceware.org/ml/gdb-patches/2011-03/msg00651.html

  This way you will find only the implementation of function foo_function
using grep:

grep "^foo_function" *

  I really thought that prototypes,
either in header or in C sources should not be found by that
pattern and that it shouls thus either be on a single line,
or be indented to avoid being on first column.

 Notice that the new rule only found a few of these
extern TYPE
long_func_name (with_long_parameters);

  Would it be better to reformat those as
extern TYPE long_func_name 
  (with_long_parameters);
instead of
extern TYPE
  long_func_name (with_long_parameters);

  I have no preference on that matter,
I would really like to avoid getting both the
prototype and the implementation if I do:

grep "^func_name " 

That's the reason of this rule.

  Tell us what you think about the alternate
I propose above and what we should do in your opinion.


Pierre Muller
as ARI maintainer.


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