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: [RFA-v2] Fix ARI warning about function call in first column



> -----Message d'origine-----
> De?: Eli Zaretskii [mailto:eliz@gnu.org]
> Envoyé?: lundi 14 mars 2011 17:46
> À?: Pierre Muller
> Cc?: tromey@redhat.com; gdb-patches@sourceware.org
> Objet?: Re: [RFA-v2] Fix ARI warning about function call in first
> column
> 
> > From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
> > Cc: <gdb-patches@sourceware.org>
> > Date: Mon, 14 Mar 2011 17:03:16 +0100
> >
> >   Eli, this still leaves us with two
> > cases for which we either have
> > TYPE
> >   NAME (PARAMS);
> > or
> > TYPE NAME (PARAMS);
> > with a single line that exceeds 80 columns.
> 
> I see no problem with long lines, if there are no better alternatives.
> I generally dislike tools that raise warnings for perfectly valid and
> readable code, and I don't think we must every follow minor stylistic
> rule when that rule gives sub-optimal results.
> 
> But it sounds like I'm the only one (again).  So I give up: do
> whatever you and others think is right, and I will crawl back under my
> rock.

  Don't do it, I finally committed something that should suit
you as well...


 
> >   I didn't really understand your comment about
> > automatic indenting by emacs because I never used emacs :(
> 
> In Emacs, hitting the TAB key anywhere on a line of code reindents
> this line according to the current setting of the coding style.  The
> default coding style is, not surprisingly, the GNU coding style
> described in standards.texi.
> 
> So, when you hit TAB in a C source file on the second of the two lines
> that say
> 
> TYPE
>   NAME (PARAMS);
> 
> Emacs reindents it like this:
> 
> TYPE
> NAME (PARAMS);
> 
> You can also re-indent a whole region of source in Emacs, by marking
> the region and pressing TAB.  This is a very convenient way of
> reformatting a large portion of code according to GNU standards (which
> mostly happen to be GDB standards as well).  When you re-indent a
> large region like that, it is easy to undo the kind of formatting you
> want to enforce, shown above, because you will not generally go back
> and examine each line of the reformatted region -- you trust Emacs to
> DTRT.
> 
> The  net  result  will  be,   I  fear,  that  such  reformatting  will
> inadvertently  undo the  indentation  of prototypes,  and trigger  ARI
> warnings for no good reason.
> 
> I hope I made myself clear this time.

  Thanks for the explanation.

  Here is what I finally checked in,
it does avoid indented lone function names.

  Personally, I would have done it like this:
TYPE FUNC_NAME (
  PARAMS);
or
TYPE FUNC_NAME (
  PARAM1,
  PARAMS);

but this is another problem.

  This should remove ARI warnings, and
more importantly allow for easy finding of
function implementation (which was my reason
of adding that ARI rule).

  I hope everyone is OK with this.
I think that we do have lots of other occurrences 
of lines longer than 80 cols anyhow...

Pierre


2011-03-14  Pierre Muller  <muller@ics.u-strasbg.fr>

	Fix ARI warning about function names in first column.
	Put prototype declaration on same line as return type.
	* objc-exp.y: Ditto.
	* p-exp.y: Ditto.
	* python/py-stopevent.h: Ditto.
	For long function names, split parameters to
	allow function name on same line as return type.
	* solib-pa64.c: Ditto.
	* varobj.c: Ditto.
	* varobj.h: Ditto.
	For long function declaration, use single line.
	* hppa-tdep.h: Ditto.
	* inferior.h: Ditto.	



Index: objc-exp.y
===================================================================
RCS file: /cvs/src/src/gdb/objc-exp.y,v
retrieving revision 1.42
diff -u -p -r1.42 objc-exp.y
--- objc-exp.y	14 Mar 2011 15:43:50 -0000	1.42
+++ objc-exp.y	14 Mar 2011 16:42:05 -0000
@@ -107,14 +107,11 @@
 #define	YYDEBUG	0		/* Default to no yydebug support.
*/
 #endif
 
-int
-yyparse (void);
+int yyparse (void);
 
-static int
-yylex (void);
+static int yylex (void);
 
-void
-yyerror (char *);
+void yyerror (char *);
 
 %}
 
@@ -150,8 +147,7 @@ yyerror (char *);
 
 %{
 /* YYSTYPE gets defined by %union.  */
-static int
-parse_number (char *, int, int, YYSTYPE *);
+static int parse_number (char *, int, int, YYSTYPE *);
 %}
 
 %type <voidval> exp exp1 type_exp start variable qualified_name lcurly
Index: p-exp.y
===================================================================
RCS file: /cvs/src/src/gdb/p-exp.y,v
retrieving revision 1.55
diff -u -p -r1.55 p-exp.y
--- p-exp.y	14 Mar 2011 15:43:50 -0000	1.55
+++ p-exp.y	14 Mar 2011 16:42:05 -0000
@@ -117,8 +117,7 @@ int yyparse (void);
 
 static int yylex (void);
 
-void
-yyerror (char *);
+void yyerror (char *);
 
 static char * uptok (char *, int);
 %}
@@ -154,8 +153,7 @@ static char * uptok (char *, int);
 
 %{
 /* YYSTYPE gets defined by %union */
-static int
-parse_number (char *, int, int, YYSTYPE *);
+static int parse_number (char *, int, int, YYSTYPE *);
 
 static struct type *current_type;
 static struct internalvar *intvar;
Index: solib-pa64.c
===================================================================
RCS file: /cvs/src/src/gdb/solib-pa64.c,v
retrieving revision 1.29
diff -u -p -r1.29 solib-pa64.c
--- solib-pa64.c	11 Jan 2011 21:53:24 -0000	1.29
+++ solib-pa64.c	14 Mar 2011 16:42:05 -0000
@@ -76,8 +76,8 @@ dld_cache_t;
 
 static dld_cache_t dld_cache;
 
-static int
-read_dynamic_info (asection *dyninfo_sect, dld_cache_t *dld_cache_p);
+static int read_dynamic_info (asection *dyninfo_sect,
+			      dld_cache_t *dld_cache_p);
 
 static void
 pa64_relocate_section_addresses (struct so_list *so,
Index: varobj.c
===================================================================
RCS file: /cvs/src/src/gdb/varobj.c,v
retrieving revision 1.172
diff -u -p -r1.172 varobj.c
--- varobj.c	5 Mar 2011 22:02:47 -0000	1.172
+++ varobj.c	14 Mar 2011 16:42:06 -0000
@@ -296,8 +296,9 @@ static int is_root_p (struct varobj *var
 
 #if HAVE_PYTHON
 
-static struct varobj *
-varobj_add_child (struct varobj *var, const char *name, struct value
*value);
+static struct varobj * varobj_add_child (struct varobj *var,
+					 const char *name,
+					 struct value *value);
 
 #endif /* HAVE_PYTHON */
 
Index: varobj.h
===================================================================
RCS file: /cvs/src/src/gdb/varobj.h,v
retrieving revision 1.27
diff -u -p -r1.27 varobj.h
--- varobj.h	12 Jan 2011 01:23:29 -0000	1.27
+++ varobj.h	14 Mar 2011 16:42:06 -0000
@@ -167,8 +167,8 @@ extern int varobj_editable_p (struct var
 
 extern int varobj_floating_p (struct varobj *var);
 
-extern void 
-varobj_set_visualizer (struct varobj *var, const char *visualizer);
+extern void varobj_set_visualizer (struct varobj *var,
+				   const char *visualizer);
 
 extern void varobj_enable_pretty_printing (void);
 
Index: python/py-stopevent.h
===================================================================
RCS file: /cvs/src/src/gdb/python/py-stopevent.h,v
retrieving revision 1.1
diff -u -p -r1.1 py-stopevent.h
--- python/py-stopevent.h	5 Feb 2011 05:27:23 -0000	1.1
+++ python/py-stopevent.h	14 Mar 2011 16:42:06 -0000
@@ -28,10 +28,8 @@ extern void stop_evpy_dealloc (PyObject 
 extern int emit_stop_event (struct bpstats *bs,
                             enum target_signal stop_signal);
 
-extern PyObject *
-create_breakpoint_event_object (PyObject *breakpoint);
+extern PyObject *create_breakpoint_event_object (PyObject *breakpoint);
 
-extern PyObject *
-create_signal_event_object (enum target_signal stop_signal);
+extern PyObject *create_signal_event_object (enum target_signal
stop_signal);
 
 #endif /* GDB_PY_STOPEVENT_H */
Index: hppa-tdep.h
===================================================================
RCS file: /cvs/src/src/gdb/hppa-tdep.h,v
retrieving revision 1.41
diff -u -p -r1.41 hppa-tdep.h
--- hppa-tdep.h	9 Jan 2011 03:08:55 -0000	1.41
+++ hppa-tdep.h	14 Mar 2011 16:52:16 -0000
@@ -240,8 +240,7 @@ extern struct minimal_symbol *
   hppa_lookup_stub_minimal_symbol (const char *name,
                                    enum unwind_stub_types stub_type);
 
-extern struct hppa_objfile_private *
-hppa_init_objfile_priv_data (struct objfile *objfile);
+extern struct hppa_objfile_private * hppa_init_objfile_priv_data (struct
objfile *objfile);
 
 extern int hppa_in_solib_call_trampoline (struct gdbarch *gdbarch,
 					  CORE_ADDR pc, char *name);
Index: inferior.h
===================================================================
RCS file: /cvs/src/src/gdb/inferior.h,v
retrieving revision 1.152
diff -u -p -r1.152 inferior.h
--- inferior.h	26 Feb 2011 02:07:08 -0000	1.152
+++ inferior.h	14 Mar 2011 16:52:16 -0000
@@ -366,8 +366,7 @@ extern int debug_displaced;
 void displaced_step_dump_bytes (struct ui_file *file,
                                 const gdb_byte *buf, size_t len);
 
-struct displaced_step_closure*
-get_displaced_step_closure_by_addr (CORE_ADDR addr);
+struct displaced_step_closure* get_displaced_step_closure_by_addr
(CORE_ADDR addr);
 

 /* Possible values for gdbarch_call_dummy_location.  */
 #define ON_STACK 1


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