From f55ade6e34ae3da57dd1a270c4bee55ad4f85cf5 Mon Sep 17 00:00:00 2001
From: Andreas Jaeger <aj@gcc.gnu.org>
Date: Sun, 6 Jul 2003 20:59:38 +0200
Subject: [PATCH] basic-block.h: Convert prototypes to ISO C90.

	* basic-block.h: Convert prototypes to ISO C90.
	* c-parse.in: Likewise.
	* c-pragma.h: Likewise.
	* c-typeck.c: Likewise.
	* cfghooks.h: Likewise.
	* cfgloopanal.c: Likewise.
	* dbxout.h: Likewise.
	* debug.h: Likewise.
	* dwarf2asm.h: Likewise.
	* gcov.c: Likewise.
	* gengtype-lex.l: Likewise.
	* sched-int.h: Likewise.
	* timevar.c: Likewise.

From-SVN: r69010
---
 gcc/basic-block.h  | 288 ++++++++++++++++-----------------
 gcc/c-parse.in     |  32 ++--
 gcc/c-pragma.h     |   5 +-
 gcc/c-typeck.c     |  77 ++++-----
 gcc/cfghooks.h     |   6 +-
 gcc/cfgloopanal.c  |   6 +-
 gcc/dbxout.h       |  11 +-
 gcc/debug.h        |  86 +++++-----
 gcc/dwarf2asm.h    |  59 ++++---
 gcc/gcov.c         | 385 +++++++++++++++++++++------------------------
 gcc/gengtype-lex.l |  14 +-
 gcc/sched-int.h    |  14 +-
 gcc/timevar.c      |   4 +-
 13 files changed, 462 insertions(+), 525 deletions(-)

diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index cdefca3b2296..0558fe81f5d8 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -72,7 +72,7 @@ typedef bitmap regset;
 #define REGNO_REG_SET_P(TO, REG) bitmap_bit_p (TO, REG)
 
 /* Copy the hard registers in a register set to the hard register set.  */
-extern void reg_set_to_hard_reg_set PARAMS ((HARD_REG_SET *, bitmap));
+extern void reg_set_to_hard_reg_set (HARD_REG_SET *, bitmap);
 #define REG_SET_TO_HARD_REG_SET(TO, FROM)				\
 do {									\
   CLEAR_HARD_REG_SET (TO);						\
@@ -336,49 +336,44 @@ extern struct basic_block_def entry_exit_blocks[2];
 #define BLOCK_NUM(INSN)	      (BLOCK_FOR_INSN (INSN)->index + 0)
 #define set_block_for_insn(INSN, BB)  (BLOCK_FOR_INSN (INSN) = BB)
 
-extern void compute_bb_for_insn		PARAMS ((void));
-extern void free_bb_for_insn		PARAMS ((void));
-extern void update_bb_for_insn		PARAMS ((basic_block));
+extern void compute_bb_for_insn (void);
+extern void free_bb_for_insn (void);
+extern void update_bb_for_insn (basic_block);
 
-extern void free_basic_block_vars	PARAMS ((int));
+extern void free_basic_block_vars (int);
 
-extern void insert_insn_on_edge		PARAMS ((rtx, edge));
+extern void insert_insn_on_edge (rtx, edge);
 bool safe_insert_insn_on_edge (rtx, edge);
 
-extern void commit_edge_insertions	PARAMS ((void));
-extern void commit_edge_insertions_watch_calls	PARAMS ((void));
-
-extern void remove_fake_edges		PARAMS ((void));
-extern void add_noreturn_fake_exit_edges	PARAMS ((void));
-extern void connect_infinite_loops_to_exit	PARAMS ((void));
-extern int flow_call_edges_add		PARAMS ((sbitmap));
-extern edge unchecked_make_edge		PARAMS ((basic_block,
-						 basic_block, int));
-extern edge cached_make_edge		PARAMS ((sbitmap *, basic_block,
-						 basic_block, int));
-extern edge make_edge			PARAMS ((basic_block,
-						 basic_block, int));
-extern edge make_single_succ_edge	PARAMS ((basic_block,
-						 basic_block, int));
-extern void remove_edge			PARAMS ((edge));
-extern void redirect_edge_succ		PARAMS ((edge, basic_block));
-extern edge redirect_edge_succ_nodup	PARAMS ((edge, basic_block));
-extern void redirect_edge_pred		PARAMS ((edge, basic_block));
-extern basic_block create_basic_block_structure PARAMS ((rtx, rtx, rtx, basic_block));
-extern void clear_bb_flags		PARAMS ((void));
-extern void tidy_fallthru_edge		PARAMS ((edge, basic_block,
-						 basic_block));
-extern void tidy_fallthru_edges		PARAMS ((void));
-extern void flow_reverse_top_sort_order_compute	PARAMS ((int *));
-extern int flow_depth_first_order_compute	PARAMS ((int *, int *));
-extern void flow_preorder_transversal_compute	PARAMS ((int *));
-extern int dfs_enumerate_from		PARAMS ((basic_block, int,
-						bool (*)(basic_block, void *),
-						basic_block *, int, void *));
-extern void dump_edge_info		PARAMS ((FILE *, edge, int));
-extern void clear_edges			PARAMS ((void));
-extern void mark_critical_edges		PARAMS ((void));
-extern rtx first_insn_after_basic_block_note	PARAMS ((basic_block));
+extern void commit_edge_insertions (void);
+extern void commit_edge_insertions_watch_calls (void);
+
+extern void remove_fake_edges (void);
+extern void add_noreturn_fake_exit_edges (void);
+extern void connect_infinite_loops_to_exit (void);
+extern int flow_call_edges_add (sbitmap);
+extern edge unchecked_make_edge (basic_block, basic_block, int);
+extern edge cached_make_edge (sbitmap *, basic_block, basic_block, int);
+extern edge make_edge (basic_block, basic_block, int);
+extern edge make_single_succ_edge (basic_block, basic_block, int);
+extern void remove_edge (edge);
+extern void redirect_edge_succ (edge, basic_block);
+extern edge redirect_edge_succ_nodup (edge, basic_block);
+extern void redirect_edge_pred (edge, basic_block);
+extern basic_block create_basic_block_structure (rtx, rtx, rtx, basic_block);
+extern void clear_bb_flags (void);
+extern void tidy_fallthru_edge (edge, basic_block, basic_block);
+extern void tidy_fallthru_edges (void);
+extern void flow_reverse_top_sort_order_compute (int *);
+extern int flow_depth_first_order_compute (int *, int *);
+extern void flow_preorder_transversal_compute (int *);
+extern int dfs_enumerate_from (basic_block, int,
+			       bool (*)(basic_block, void *),
+			       basic_block *, int, void *);
+extern void dump_edge_info (FILE *, edge, int);
+extern void clear_edges (void);
+extern void mark_critical_edges (void);
+extern rtx first_insn_after_basic_block_note (basic_block);
 
 /* Dominator information for basic blocks.  */
 
@@ -455,12 +450,11 @@ struct edge_list
 #define EDGE_CRITICAL_P(e)		((e)->src->succ->succ_next \
 					 && (e)->dest->pred->pred_next)
 
-struct edge_list * create_edge_list	PARAMS ((void));
-void free_edge_list			PARAMS ((struct edge_list *));
-void print_edge_list			PARAMS ((FILE *, struct edge_list *));
-void verify_edge_list			PARAMS ((FILE *, struct edge_list *));
-int find_edge_index			PARAMS ((struct edge_list *,
-						 basic_block, basic_block));
+struct edge_list * create_edge_list (void);
+void free_edge_list (struct edge_list *);
+void print_edge_list (FILE *, struct edge_list *);
+void verify_edge_list (FILE *, struct edge_list *);
+int find_edge_index (struct edge_list *, basic_block, basic_block);
 
 
 enum update_life_extent
@@ -502,123 +496,110 @@ enum update_life_extent
 #define CLEANUP_NO_INSN_DEL	128	/* Do not try to delete trivially dead
 					   insns.  */
 #define CLEANUP_CFGLAYOUT	256	/* Do cleanup in cfglayout mode.  */
-extern void life_analysis	PARAMS ((rtx, FILE *, int));
-extern int update_life_info	PARAMS ((sbitmap, enum update_life_extent,
-					 int));
-extern int update_life_info_in_dirty_blocks PARAMS ((enum update_life_extent,
-						      int));
-extern int count_or_remove_death_notes	PARAMS ((sbitmap, int));
-extern int propagate_block	PARAMS ((basic_block, regset, regset, regset,
-					 int));
+extern void life_analysis (rtx, FILE *, int);
+extern int update_life_info (sbitmap, enum update_life_extent, int);
+extern int update_life_info_in_dirty_blocks (enum update_life_extent, int);
+extern int count_or_remove_death_notes (sbitmap, int);
+extern int propagate_block (basic_block, regset, regset, regset, int);
 
 struct propagate_block_info;
-extern rtx propagate_one_insn	PARAMS ((struct propagate_block_info *, rtx));
+extern rtx propagate_one_insn (struct propagate_block_info *, rtx);
 extern struct propagate_block_info *init_propagate_block_info
-  PARAMS ((basic_block, regset, regset, regset, int));
-extern void free_propagate_block_info PARAMS ((struct propagate_block_info *));
+ (basic_block, regset, regset, regset, int);
+extern void free_propagate_block_info (struct propagate_block_info *);
 
 /* In lcm.c */
-extern struct edge_list *pre_edge_lcm	PARAMS ((FILE *, int, sbitmap *,
-						 sbitmap *, sbitmap *,
-						 sbitmap *, sbitmap **,
-						 sbitmap **));
-extern struct edge_list *pre_edge_rev_lcm PARAMS ((FILE *, int, sbitmap *,
-						   sbitmap *, sbitmap *,
-						   sbitmap *, sbitmap **,
-						   sbitmap **));
-extern void compute_available		PARAMS ((sbitmap *, sbitmap *,
-						 sbitmap *, sbitmap *));
-extern int optimize_mode_switching	PARAMS ((FILE *));
+extern struct edge_list *pre_edge_lcm (FILE *, int, sbitmap *, sbitmap *,
+				       sbitmap *, sbitmap *, sbitmap **,
+				       sbitmap **);
+extern struct edge_list *pre_edge_rev_lcm (FILE *, int, sbitmap *,
+					   sbitmap *, sbitmap *,
+					   sbitmap *, sbitmap **,
+					   sbitmap **);
+extern void compute_available (sbitmap *, sbitmap *, sbitmap *, sbitmap *);
+extern int optimize_mode_switching (FILE *);
 
 /* In emit-rtl.c.  */
-extern rtx emit_block_insn_after	PARAMS ((rtx, rtx, basic_block));
-extern rtx emit_block_insn_before	PARAMS ((rtx, rtx, basic_block));
+extern rtx emit_block_insn_after (rtx, rtx, basic_block);
+extern rtx emit_block_insn_before (rtx, rtx, basic_block);
 
 /* In predict.c */
-extern void estimate_probability        PARAMS ((struct loops *));
-extern void note_prediction_to_br_prob	PARAMS ((void));
-extern void expected_value_to_br_prob	PARAMS ((void));
-extern bool maybe_hot_bb_p		PARAMS ((basic_block));
-extern bool probably_cold_bb_p		PARAMS ((basic_block));
-extern bool probably_never_executed_bb_p PARAMS ((basic_block));
+extern void estimate_probability (struct loops *);
+extern void note_prediction_to_br_prob (void);
+extern void expected_value_to_br_prob (void);
+extern bool maybe_hot_bb_p (basic_block);
+extern bool probably_cold_bb_p (basic_block);
+extern bool probably_never_executed_bb_p (basic_block);
 
 /* In flow.c */
-extern void init_flow                   PARAMS ((void));
-extern void dump_bb			PARAMS ((basic_block, FILE *));
-extern void debug_bb			PARAMS ((basic_block));
-extern basic_block debug_bb_n		PARAMS ((int));
-extern void dump_regset			PARAMS ((regset, FILE *));
-extern void debug_regset		PARAMS ((regset));
-extern void allocate_reg_life_data      PARAMS ((void));
-extern void allocate_bb_life_data	PARAMS ((void));
-extern void expunge_block		PARAMS ((basic_block));
-extern void link_block			PARAMS ((basic_block, basic_block));
-extern void unlink_block		PARAMS ((basic_block));
-extern void compact_blocks		PARAMS ((void));
-extern basic_block alloc_block		PARAMS ((void));
-extern void find_unreachable_blocks	PARAMS ((void));
-extern int delete_noop_moves		PARAMS ((rtx));
-extern basic_block force_nonfallthru	PARAMS ((edge));
-extern rtx block_label			PARAMS ((basic_block));
-extern bool forwarder_block_p		PARAMS ((basic_block));
-extern bool purge_all_dead_edges	PARAMS ((int));
-extern bool purge_dead_edges		PARAMS ((basic_block));
-extern void find_sub_basic_blocks	PARAMS ((basic_block));
-extern void find_many_sub_basic_blocks	PARAMS ((sbitmap));
-extern bool can_fallthru		PARAMS ((basic_block, basic_block));
-extern void flow_nodes_print		PARAMS ((const char *, const sbitmap,
-						 FILE *));
-extern void flow_edge_list_print	PARAMS ((const char *, const edge *,
-						 int, FILE *));
-extern void alloc_aux_for_block		PARAMS ((basic_block, int));
-extern void alloc_aux_for_blocks	PARAMS ((int));
-extern void clear_aux_for_blocks	PARAMS ((void));
-extern void free_aux_for_blocks		PARAMS ((void));
-extern void alloc_aux_for_edge		PARAMS ((edge, int));
-extern void alloc_aux_for_edges		PARAMS ((int));
-extern void clear_aux_for_edges		PARAMS ((void));
-extern void free_aux_for_edges		PARAMS ((void));
+extern void init_flow (void);
+extern void dump_bb (basic_block, FILE *);
+extern void debug_bb (basic_block);
+extern basic_block debug_bb_n (int);
+extern void dump_regset (regset, FILE *);
+extern void debug_regset (regset);
+extern void allocate_reg_life_data (void);
+extern void allocate_bb_life_data (void);
+extern void expunge_block (basic_block);
+extern void link_block (basic_block, basic_block);
+extern void unlink_block (basic_block);
+extern void compact_blocks (void);
+extern basic_block alloc_block (void);
+extern void find_unreachable_blocks (void);
+extern int delete_noop_moves (rtx);
+extern basic_block force_nonfallthru (edge);
+extern rtx block_label (basic_block);
+extern bool forwarder_block_p (basic_block);
+extern bool purge_all_dead_edges (int);
+extern bool purge_dead_edges (basic_block);
+extern void find_sub_basic_blocks (basic_block);
+extern void find_many_sub_basic_blocks (sbitmap);
+extern bool can_fallthru (basic_block, basic_block);
+extern void flow_nodes_print (const char *, const sbitmap, FILE *);
+extern void flow_edge_list_print (const char *, const edge *, int, FILE *);
+extern void alloc_aux_for_block (basic_block, int);
+extern void alloc_aux_for_blocks (int);
+extern void clear_aux_for_blocks (void);
+extern void free_aux_for_blocks (void);
+extern void alloc_aux_for_edge (edge, int);
+extern void alloc_aux_for_edges (int);
+extern void clear_aux_for_edges (void);
+extern void free_aux_for_edges (void);
 
 /* This function is always defined so it can be called from the
    debugger, and it is declared extern so we don't get warnings about
    it being unused.  */
-extern void verify_flow_info		PARAMS ((void));
+extern void verify_flow_info (void);
 
 typedef struct conflict_graph_def *conflict_graph;
 
 /* Callback function when enumerating conflicts.  The arguments are
    the smaller and larger regno in the conflict.  Returns zero if
    enumeration is to continue, nonzero to halt enumeration.  */
-typedef int (*conflict_graph_enum_fn) PARAMS ((int, int, void *));
+typedef int (*conflict_graph_enum_fn) (int, int, void *);
 
 
 /* Prototypes of operations on conflict graphs.  */
 
 extern conflict_graph conflict_graph_new
-                                        PARAMS ((int));
-extern void conflict_graph_delete       PARAMS ((conflict_graph));
-extern int conflict_graph_add           PARAMS ((conflict_graph,
-						 int, int));
-extern int conflict_graph_conflict_p    PARAMS ((conflict_graph,
-						 int, int));
-extern void conflict_graph_enum         PARAMS ((conflict_graph, int,
-						 conflict_graph_enum_fn,
-						 void *));
-extern void conflict_graph_merge_regs   PARAMS ((conflict_graph, int,
-						 int));
-extern void conflict_graph_print        PARAMS ((conflict_graph, FILE*));
-extern conflict_graph conflict_graph_compute
-                                        PARAMS ((regset,
-						 partition));
-extern bool mark_dfs_back_edges		PARAMS ((void));
-extern void set_edge_can_fallthru_flag	PARAMS ((void));
-extern void update_br_prob_note		PARAMS ((basic_block));
-extern void fixup_abnormal_edges	PARAMS ((void));
-extern bool can_hoist_insn_p		PARAMS ((rtx, rtx, regset));
-extern rtx hoist_insn_after		PARAMS ((rtx, rtx, rtx, rtx));
-extern rtx hoist_insn_to_edge		PARAMS ((rtx, edge, rtx, rtx));
-extern bool inside_basic_block_p	PARAMS ((rtx));
-extern bool control_flow_insn_p		PARAMS ((rtx));
+ (int);
+extern void conflict_graph_delete (conflict_graph);
+extern int conflict_graph_add (conflict_graph, int, int);
+extern int conflict_graph_conflict_p (conflict_graph, int, int);
+extern void conflict_graph_enum (conflict_graph, int, conflict_graph_enum_fn,
+				 void *);
+extern void conflict_graph_merge_regs (conflict_graph, int, int);
+extern void conflict_graph_print (conflict_graph, FILE*);
+extern conflict_graph conflict_graph_compute (regset, partition);
+extern bool mark_dfs_back_edges (void);
+extern void set_edge_can_fallthru_flag (void);
+extern void update_br_prob_note (basic_block);
+extern void fixup_abnormal_edges (void);
+extern bool can_hoist_insn_p (rtx, rtx, regset);
+extern rtx hoist_insn_after (rtx, rtx, rtx, rtx);
+extern rtx hoist_insn_to_edge (rtx, edge, rtx, rtx);
+extern bool inside_basic_block_p (rtx);
+extern bool control_flow_insn_p (rtx);
 
 /* In bb-reorder.c */
 extern void reorder_basic_blocks (void);
@@ -631,23 +612,22 @@ enum cdi_direction
   CDI_POST_DOMINATORS
 };
 
-extern dominance_info calculate_dominance_info	PARAMS ((enum cdi_direction));
-extern void free_dominance_info			PARAMS ((dominance_info));
-extern basic_block nearest_common_dominator	PARAMS ((dominance_info,
-						 basic_block, basic_block));
-extern void set_immediate_dominator	PARAMS ((dominance_info,
-						 basic_block, basic_block));
-extern basic_block get_immediate_dominator	PARAMS ((dominance_info,
-						 basic_block));
-extern bool dominated_by_p	PARAMS ((dominance_info, basic_block, basic_block));
-extern int get_dominated_by PARAMS ((dominance_info, basic_block, basic_block **));
-extern void add_to_dominance_info PARAMS ((dominance_info, basic_block));
-extern void delete_from_dominance_info PARAMS ((dominance_info, basic_block));
-basic_block recount_dominator PARAMS ((dominance_info, basic_block));
-extern void redirect_immediate_dominators PARAMS ((dominance_info, basic_block,
-						 basic_block));
-void iterate_fix_dominators PARAMS ((dominance_info, basic_block *, int));
-extern void verify_dominators PARAMS ((dominance_info));
+extern dominance_info calculate_dominance_info (enum cdi_direction);
+extern void free_dominance_info (dominance_info);
+extern basic_block nearest_common_dominator (dominance_info,
+					     basic_block, basic_block);
+extern void set_immediate_dominator (dominance_info, basic_block,
+				     basic_block);
+extern basic_block get_immediate_dominator (dominance_info, basic_block);
+extern bool dominated_by_p (dominance_info, basic_block, basic_block);
+extern int get_dominated_by (dominance_info, basic_block, basic_block **);
+extern void add_to_dominance_info (dominance_info, basic_block);
+extern void delete_from_dominance_info (dominance_info, basic_block);
+basic_block recount_dominator (dominance_info, basic_block);
+extern void redirect_immediate_dominators (dominance_info, basic_block,
+					   basic_block);
+void iterate_fix_dominators (dominance_info, basic_block *, int);
+extern void verify_dominators (dominance_info);
 
 #include "cfghooks.h"
 
diff --git a/gcc/c-parse.in b/gcc/c-parse.in
index 6eaa354c02bf..bcfb0248c3a0 100644
--- a/gcc/c-parse.in
+++ b/gcc/c-parse.in
@@ -332,16 +332,16 @@ static bool parsing_iso_function_signature;
 
 #define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
 
-static void yyprint	  PARAMS ((FILE *, int, YYSTYPE));
-static void yyerror	  PARAMS ((const char *));
-static int yylexname	  PARAMS ((void));
-static inline int _yylex  PARAMS ((void));
-static int  yylex	  PARAMS ((void));
-static void init_reswords PARAMS ((void));
+static void yyprint (FILE *, int, YYSTYPE);
+static void yyerror (const char *);
+static int yylexname (void);
+static inline int _yylex (void);
+static int  yylex (void);
+static void init_reswords (void);
 
   /* Initialisation routine for this file.  */
 void
-c_parse_init ()
+c_parse_init (void)
 {
   init_reswords ();
 }
@@ -3526,7 +3526,7 @@ static const short rid_to_yy[RID_MAX] =
 };
 
 static void
-init_reswords ()
+init_reswords (void)
 {
   unsigned int i;
   tree id;
@@ -3554,8 +3554,7 @@ init_reswords ()
 #define NAME(type) cpp_type2name (type)
 
 static void
-yyerror (msgid)
-     const char *msgid;
+yyerror (const char *msgid)
 {
   const char *string = _(msgid);
 
@@ -3582,7 +3581,7 @@ yyerror (msgid)
 }
 
 static int
-yylexname ()
+yylexname (void)
 {
   tree decl;
 
@@ -3641,7 +3640,7 @@ end ifobjc
 }
 
 static inline int
-_yylex ()
+_yylex (void)
 {
  get_next:
   last_token = c_lex (&yylval.ttype);
@@ -3745,7 +3744,7 @@ _yylex ()
 }
 
 static int
-yylex()
+yylex (void)
 {
   int r;
   timevar_push (TV_LEX);
@@ -3757,10 +3756,7 @@ yylex()
 /* Function used when yydebug is set, to print a token in more detail.  */
 
 static void
-yyprint (file, yychar, yyl)
-     FILE *file;
-     int yychar;
-     YYSTYPE yyl;
+yyprint (FILE *file, int yychar, YYSTYPE yyl)
 {
   tree t = yyl.ttype;
 
@@ -3797,7 +3793,7 @@ yyprint (file, yychar, yyl)
 /* Free malloced parser stacks if necessary.  */
 
 void
-free_parser_stacks ()
+free_parser_stacks (void)
 {
   if (malloced_yyss)
     {
diff --git a/gcc/c-pragma.h b/gcc/c-pragma.h
index 57f78845de08..b14a0c4738c2 100644
--- a/gcc/c-pragma.h
+++ b/gcc/c-pragma.h
@@ -51,9 +51,8 @@ extern void init_pragma (void);
 
 /* Front-end wrapper for pragma registration to avoid dragging
    cpplib.h in almost everywhere.  */
-extern void c_register_pragma
-	PARAMS ((const char *, const char *,
-		 void (*) (struct cpp_reader *)));
+extern void c_register_pragma (const char *, const char *,
+			       void (*) (struct cpp_reader *));
 extern void maybe_apply_pragma_weak (tree);
 extern tree maybe_apply_renaming_pragma (tree, tree);
 extern void add_to_renaming_pragma_list (tree, tree);
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c
index a6213e2faf9b..718bd8f59862 100644
--- a/gcc/c-typeck.c
+++ b/gcc/c-typeck.c
@@ -52,39 +52,38 @@ static int missing_braces_mentioned;
 /* 1 if we explained undeclared var errors.  */
 static int undeclared_variable_notice;
 
-static tree qualify_type		PARAMS ((tree, tree));
-static int comp_target_types		PARAMS ((tree, tree, int));
-static int function_types_compatible_p	PARAMS ((tree, tree));
-static int type_lists_compatible_p	PARAMS ((tree, tree));
-static tree decl_constant_value_for_broken_optimization PARAMS ((tree));
-static tree default_function_array_conversion	PARAMS ((tree));
-static tree lookup_field		PARAMS ((tree, tree));
-static void undeclared_variable		PARAMS ((tree));
-static tree convert_arguments		PARAMS ((tree, tree, tree, tree));
-static tree pointer_diff		PARAMS ((tree, tree));
-static tree unary_complex_lvalue	PARAMS ((enum tree_code, tree, int));
-static void pedantic_lvalue_warning	PARAMS ((enum tree_code));
-static tree internal_build_compound_expr PARAMS ((tree, int));
-static tree convert_for_assignment	PARAMS ((tree, tree, const char *,
-						 tree, tree, int));
-static void warn_for_assignment		PARAMS ((const char *, const char *,
-						 tree, int));
-static tree valid_compound_expr_initializer PARAMS ((tree, tree));
-static void push_string			PARAMS ((const char *));
-static void push_member_name		PARAMS ((tree));
-static void push_array_bounds		PARAMS ((int));
-static int spelling_length		PARAMS ((void));
-static char *print_spelling		PARAMS ((char *));
-static void warning_init		PARAMS ((const char *));
-static tree digest_init			PARAMS ((tree, tree, int));
-static void output_init_element		PARAMS ((tree, tree, tree, int));
-static void output_pending_init_elements PARAMS ((int));
-static int set_designator		PARAMS ((int));
-static void push_range_stack		PARAMS ((tree));
-static void add_pending_init		PARAMS ((tree, tree));
-static void set_nonincremental_init	PARAMS ((void));
-static void set_nonincremental_init_from_string	PARAMS ((tree));
-static tree find_init_member		PARAMS ((tree));
+static tree qualify_type (tree, tree);
+static int comp_target_types (tree, tree, int);
+static int function_types_compatible_p (tree, tree);
+static int type_lists_compatible_p (tree, tree);
+static tree decl_constant_value_for_broken_optimization (tree);
+static tree default_function_array_conversion (tree);
+static tree lookup_field (tree, tree);
+static void undeclared_variable (tree);
+static tree convert_arguments (tree, tree, tree, tree);
+static tree pointer_diff (tree, tree);
+static tree unary_complex_lvalue (enum tree_code, tree, int);
+static void pedantic_lvalue_warning (enum tree_code);
+static tree internal_build_compound_expr (tree, int);
+static tree convert_for_assignment (tree, tree, const char *, tree, tree,
+				    int);
+static void warn_for_assignment (const char *, const char *, tree, int);
+static tree valid_compound_expr_initializer (tree, tree);
+static void push_string (const char *);
+static void push_member_name (tree);
+static void push_array_bounds (int);
+static int spelling_length (void);
+static char *print_spelling (char *);
+static void warning_init (const char *);
+static tree digest_init (tree, tree, int);
+static void output_init_element (tree, tree, tree, int);
+static void output_pending_init_elements (int);
+static int set_designator (int);
+static void push_range_stack (tree);
+static void add_pending_init (tree, tree);
+static void set_nonincremental_init (void);
+static void set_nonincremental_init_from_string (tree);
+static tree find_init_member (tree);
 
 /* Do `exp = require_complete_type (exp);' to make sure exp
    does not have an incomplete type.  (That includes void types.)  */
@@ -1859,7 +1858,8 @@ parser_build_binary_op (enum tree_code code, tree arg1, tree arg2)
    the arithmetic is to be done.  */
 
 tree
-build_binary_op (enum tree_code code, tree orig_op0, tree orig_op1, int convert_p)
+build_binary_op (enum tree_code code, tree orig_op0, tree orig_op1,
+		 int convert_p)
 {
   tree type0, type1;
   enum tree_code code0, code1;
@@ -3872,7 +3872,8 @@ build_modify_expr (tree lhs, enum tree_code modifycode, tree rhs)
    PARMNUM is the number of the argument, for printing in error messages.  */
 
 static tree
-convert_for_assignment (tree type, tree rhs, const char *errtype, tree fundecl, tree funname, int parmnum)
+convert_for_assignment (tree type, tree rhs, const char *errtype,
+			tree fundecl, tree funname, int parmnum)
 {
   enum tree_code codel = TREE_CODE (type);
   tree rhstype;
@@ -4194,7 +4195,8 @@ c_convert_parm_for_inlining (tree parm, tree value, tree fn)
    Objective-C selector.  */
 
 static void
-warn_for_assignment (const char *msgid, const char *opname, tree function, int argnum)
+warn_for_assignment (const char *msgid, const char *opname, tree function,
+		     int argnum)
 {
   if (opname == 0)
     {
@@ -6703,7 +6705,8 @@ simple_asm_stmt (tree expr)
    STRING, some OUTPUTS, some INPUTS, and some CLOBBERS.  */
 
 tree
-build_asm_stmt (tree cv_qualifier, tree string, tree outputs, tree inputs, tree clobbers)
+build_asm_stmt (tree cv_qualifier, tree string, tree outputs, tree inputs,
+		tree clobbers)
 {
   tree tail;
 
diff --git a/gcc/cfghooks.h b/gcc/cfghooks.h
index a44a208a3372..37457deff8be 100644
--- a/gcc/cfghooks.h
+++ b/gcc/cfghooks.h
@@ -32,7 +32,7 @@ struct cfg_hooks
   /* Basic CFG manipulation.  */
 
   /* Return new basic block */
-  basic_block (*create_basic_block)	PARAMS ((void *head, void *end, basic_block after));
+  basic_block (*create_basic_block) (void *head, void *end, basic_block after);
 
   /* Redirect edge E to the given basic block B and update underlying program
      representation.  Returns false when edge is not easily redirectable for
@@ -51,10 +51,10 @@ struct cfg_hooks
   edge (*split_block) (basic_block b, void * i);
 
   /* Return true when blocks A and B can be merged into single basic block.  */
-  bool (*can_merge_blocks_p)		PARAMS ((basic_block a, basic_block b));
+  bool (*can_merge_blocks_p) (basic_block a, basic_block b);
 
   /* Merge blocks A and B.  */
-  void (*merge_blocks)			PARAMS ((basic_block a, basic_block b));
+  void (*merge_blocks) (basic_block a, basic_block b);
 
   /* Higher level functions representable by primitive operations above if
      we didn't have some oddities in RTL and Tree representations.  */
diff --git a/gcc/cfgloopanal.c b/gcc/cfgloopanal.c
index e5fd46c97754..5502844ce4ff 100644
--- a/gcc/cfgloopanal.c
+++ b/gcc/cfgloopanal.c
@@ -96,7 +96,7 @@ blocks_invariant_registers (basic_block *bbs, int nbbs, regset regs)
 	 insn = NEXT_INSN (insn))
       if (INSN_P (insn))
 	note_stores (PATTERN (insn),
-		     (void (*) PARAMS ((rtx, rtx, void *))) unmark_altered,
+		     (void (*) (rtx, rtx, void *)) unmark_altered,
 		     regs);
 }
 
@@ -158,7 +158,7 @@ blocks_single_set_registers (basic_block *bbs, int nbbs, rtx *regs)
 	  continue;
 	data.insn = insn;
 	note_stores (PATTERN (insn),
-	    (void (*) PARAMS ((rtx, rtx, void *))) unmark_altered_insn,
+	    (void (*) (rtx, rtx, void *)) unmark_altered_insn,
 	    &data);
       }
 }
@@ -332,7 +332,7 @@ variable_initial_value (rtx insn, regset invariant_regs, rtx var, rtx *set_insn)
 	{
 	  if (INSN_P (insn))
 	    note_stores (PATTERN (insn),
-		(void (*) PARAMS ((rtx, rtx, void *))) unmark_altered,
+		(void (*) (rtx, rtx, void *)) unmark_altered,
 		invariant_regs);
 	  if (modified_between_p (var, PREV_INSN (insn), NEXT_INSN (insn)))
 	    break;
diff --git a/gcc/dbxout.h b/gcc/dbxout.h
index 101eae9d07c5..bf0e741fe457 100644
--- a/gcc/dbxout.h
+++ b/gcc/dbxout.h
@@ -1,5 +1,6 @@
 /* dbxout.h - Various declarations for functions found in dbxout.c
-   Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1998, 1999, 2000, 2003
+   Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -18,7 +19,7 @@ along with GCC; see the file COPYING.  If not, write to the Free
 Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 02111-1307, USA.  */
 
-extern int dbxout_symbol		PARAMS ((tree, int));
-extern void dbxout_parms		PARAMS ((tree));
-extern void dbxout_reg_parms		PARAMS ((tree));
-extern int dbxout_syms			PARAMS ((tree));
+extern int dbxout_symbol (tree, int);
+extern void dbxout_parms (tree);
+extern void dbxout_reg_parms (tree);
+extern int dbxout_syms (tree);
diff --git a/gcc/debug.h b/gcc/debug.h
index c1c0842069d5..22d837835c62 100644
--- a/gcc/debug.h
+++ b/gcc/debug.h
@@ -1,5 +1,5 @@
 /* Debug hooks for GCC.
-   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
 
 This program is free software; you can redistribute it and/or modify it
 under the terms of the GNU General Public License as published by the
@@ -25,107 +25,99 @@ struct gcc_debug_hooks
 {
   /* Initialize debug output.  MAIN_FILENAME is the name of the main
      input file.  */
-  void (* init) PARAMS ((const char *main_filename));
+  void (* init) (const char *main_filename);
 
   /* Output debug symbols.  */
-  void (* finish) PARAMS ((const char *main_filename));
+  void (* finish) (const char *main_filename);
 
   /* Macro defined on line LINE with name and expansion TEXT.  */
-  void (* define) PARAMS ((unsigned int line, const char *text));
+  void (* define) (unsigned int line, const char *text);
 
   /* MACRO undefined on line LINE.  */
-  void (* undef) PARAMS ((unsigned int line, const char *macro));
+  void (* undef) (unsigned int line, const char *macro);
 
   /* Record the beginning of a new source file FILE from LINE number
      in the previous one.  */
-  void (* start_source_file) PARAMS ((unsigned int line, const char *file));
+  void (* start_source_file) (unsigned int line, const char *file);
 
   /* Record the resumption of a source file.  LINE is the line number
      in the source file we are returning to.  */
-  void (* end_source_file) PARAMS ((unsigned int line));
+  void (* end_source_file) (unsigned int line);
 
   /* Record the beginning of block N, counting from 1 and not
      including the function-scope block, at LINE.  */
-  void (* begin_block) PARAMS ((unsigned int line, unsigned int n));
+  void (* begin_block) (unsigned int line, unsigned int n);
 
   /* Record the end of a block.  Arguments as for begin_block.  */
-  void (* end_block) PARAMS ((unsigned int line, unsigned int n));
+  void (* end_block) (unsigned int line, unsigned int n);
 
   /* Returns nonzero if it is appropriate not to emit any debugging
      information for BLOCK, because it doesn't contain any
      instructions.  This may not be the case for blocks containing
      nested functions, since we may actually call such a function even
      though the BLOCK information is messed up.  Defaults to true.  */
-  bool (* ignore_block) PARAMS ((tree));
+  bool (* ignore_block) (tree);
 
   /* Record a source file location at (FILE, LINE).  */
-  void (* source_line) PARAMS ((unsigned int line, const char *file));
+  void (* source_line) (unsigned int line, const char *file);
 
   /* Called at start of prologue code.  LINE is the first line in the
      function.  This has been given the same prototype as source_line,
      so that the source_line hook can be substituted if appropriate.  */
-  void (* begin_prologue) PARAMS ((unsigned int line, const char *file));
+  void (* begin_prologue) (unsigned int line, const char *file);
 
   /* Called at end of prologue code.  LINE is the first line in the
      function.  */
-  void (* end_prologue) PARAMS ((unsigned int line, const char *file));
+  void (* end_prologue) (unsigned int line, const char *file);
 
   /* Record end of epilogue code.  */
-  void (* end_epilogue) PARAMS ((unsigned int line, const char *file));
+  void (* end_epilogue) (unsigned int line, const char *file);
 
   /* Called at start of function DECL, before it is declared.  */
-  void (* begin_function) PARAMS ((tree decl));
+  void (* begin_function) (tree decl);
 
   /* Record end of function.  LINE is highest line number in function.  */
-  void (* end_function) PARAMS ((unsigned int line));
+  void (* end_function) (unsigned int line);
 
   /* Debug information for a function DECL.  This might include the
      function name (a symbol), its parameters, and the block that
      makes up the function's body, and the local variables of the
      function.  */
-  void (* function_decl) PARAMS ((tree decl));
+  void (* function_decl) (tree decl);
 
   /* Debug information for a global DECL.  Called from toplev.c after
      compilation proper has finished.  */
-  void (* global_decl) PARAMS ((tree decl));
+  void (* global_decl) (tree decl);
 
   /* DECL is an inline function, whose body is present, but which is
      not being output at this point.  */
-  void (* deferred_inline_function) PARAMS ((tree decl));
+  void (* deferred_inline_function) (tree decl);
 
   /* DECL is an inline function which is about to be emitted out of
      line.  The hook is useful to, e.g., emit abstract debug info for
      the inline before it gets mangled by optimization.  */
-  void (* outlining_inline_function) PARAMS ((tree decl));
+  void (* outlining_inline_function) (tree decl);
 
   /* Called from final_scan_insn for any CODE_LABEL insn whose
      LABEL_NAME is non-null.  */
-  void (* label) PARAMS ((rtx));
+  void (* label) (rtx);
 
-  /* Called after the start and before the end of writing a PCH file.  
+  /* Called after the start and before the end of writing a PCH file.
      The parameter is 0 if after the start, 1 if before the end.  */
-  void (* handle_pch) PARAMS ((unsigned int));
+  void (* handle_pch) (unsigned int);
 };
 
 extern const struct gcc_debug_hooks *debug_hooks;
 
 /* The do-nothing hooks.  */
-extern void debug_nothing_void
-  PARAMS ((void));
-extern void debug_nothing_charstar
-  PARAMS ((const char *));
-extern void debug_nothing_int_charstar
-  PARAMS ((unsigned int, const char *));
-extern void debug_nothing_int
-  PARAMS ((unsigned int));
-extern void debug_nothing_int_int
-  PARAMS ((unsigned int, unsigned int));
-extern void debug_nothing_tree
-  PARAMS ((tree));
-extern bool debug_true_tree
-  PARAMS ((tree));
-extern void debug_nothing_rtx
-  PARAMS ((rtx));
+extern void debug_nothing_void (void);
+extern void debug_nothing_charstar (const char *);
+extern void debug_nothing_int_charstar (unsigned int, const char *);
+extern void debug_nothing_int (unsigned int);
+extern void debug_nothing_int_int (unsigned int, unsigned int);
+extern void debug_nothing_tree (tree);
+extern bool debug_true_tree (tree);
+extern void debug_nothing_rtx (rtx);
 
 /* Hooks for various debug formats.  */
 extern const struct gcc_debug_hooks do_nothing_debug_hooks;
@@ -138,17 +130,17 @@ extern const struct gcc_debug_hooks vmsdbg_debug_hooks;
 
 /* Dwarf2 frame information.  */
 
-extern void dwarf2out_begin_prologue	PARAMS ((unsigned int, const char *));
-extern void dwarf2out_end_epilogue	PARAMS ((unsigned int, const char *));
-extern void dwarf2out_frame_init	PARAMS ((void));
-extern void dwarf2out_frame_finish	PARAMS ((void));
+extern void dwarf2out_begin_prologue (unsigned int, const char *);
+extern void dwarf2out_end_epilogue (unsigned int, const char *);
+extern void dwarf2out_frame_init (void);
+extern void dwarf2out_frame_finish (void);
 /* Decide whether we want to emit frame unwind information for the current
    translation unit.  */
-extern int dwarf2out_do_frame		PARAMS ((void));
+extern int dwarf2out_do_frame (void);
 
-extern void debug_flush_symbol_queue    PARAMS ((void));
-extern void debug_queue_symbol          PARAMS ((tree));
-extern void debug_free_queue            PARAMS ((void));
+extern void debug_flush_symbol_queue (void);
+extern void debug_queue_symbol (tree);
+extern void debug_free_queue (void);
 extern int debug_nesting;
 extern int symbol_queue_index;
 
diff --git a/gcc/dwarf2asm.h b/gcc/dwarf2asm.h
index 8d6fd18bd89f..1cc599e73993 100644
--- a/gcc/dwarf2asm.h
+++ b/gcc/dwarf2asm.h
@@ -1,5 +1,5 @@
 /* Dwarf2 assembler output helper routines.
-   Copyright (C) 2001 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2003 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -19,60 +19,55 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 02111-1307, USA.  */
 
 
-extern void dw2_assemble_integer	PARAMS ((int, rtx));
+extern void dw2_assemble_integer (int, rtx);
 
-extern void dw2_asm_output_data		PARAMS ((int, unsigned HOST_WIDE_INT,
-						 const char *, ...))
+extern void dw2_asm_output_data (int, unsigned HOST_WIDE_INT,
+				 const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_delta	PARAMS ((int, const char *,
-						 const char *,
-						 const char *, ...))
+extern void dw2_asm_output_delta (int, const char *, const char *,
+				  const char *, ...)
      ATTRIBUTE_NULL_PRINTF_4;
 
-extern void dw2_asm_output_offset	PARAMS ((int, const char *,
-						 const char *, ...))
+extern void dw2_asm_output_offset (int, const char *, const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_pcrel	PARAMS ((int, const char *,
-						 const char *, ...))
+extern void dw2_asm_output_pcrel (int, const char *, const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_addr		PARAMS ((int, const char *,
-						 const char *, ...))
+extern void dw2_asm_output_addr (int, const char *, const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_addr_rtx	PARAMS ((int, rtx,
-						 const char *, ...))
+extern void dw2_asm_output_addr_rtx (int, rtx, const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_encoded_addr_rtx PARAMS ((int, rtx,
-						     const char *, ...))
+extern void dw2_asm_output_encoded_addr_rtx (int, rtx,
+					     const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_nstring	PARAMS ((const char *, size_t,
-						 const char *, ...))
+extern void dw2_asm_output_nstring (const char *, size_t,
+				    const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_data_uleb128	PARAMS ((unsigned HOST_WIDE_INT,
-						 const char *, ...))
+extern void dw2_asm_output_data_uleb128	(unsigned HOST_WIDE_INT,
+					 const char *, ...)
      ATTRIBUTE_NULL_PRINTF_2;
 
-extern void dw2_asm_output_data_sleb128	PARAMS ((HOST_WIDE_INT,
-						 const char *, ...))
+extern void dw2_asm_output_data_sleb128	(HOST_WIDE_INT,
+					 const char *, ...)
      ATTRIBUTE_NULL_PRINTF_2;
 
-extern void dw2_asm_output_delta_uleb128 PARAMS ((const char *, const char *,
-						  const char *, ...))
+extern void dw2_asm_output_delta_uleb128 (const char *, const char *,
+					  const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern void dw2_asm_output_delta_sleb128 PARAMS ((const char *, const char *,
-						  const char *, ...))
+extern void dw2_asm_output_delta_sleb128 (const char *, const char *,
+					  const char *, ...)
      ATTRIBUTE_NULL_PRINTF_3;
 
-extern int size_of_uleb128		PARAMS ((unsigned HOST_WIDE_INT));
-extern int size_of_sleb128		PARAMS ((HOST_WIDE_INT));
-extern int size_of_encoded_value	PARAMS ((int));
-extern const char *eh_data_format_name	PARAMS ((int));
+extern int size_of_uleb128 (unsigned HOST_WIDE_INT);
+extern int size_of_sleb128 (HOST_WIDE_INT);
+extern int size_of_encoded_value (int);
+extern const char *eh_data_format_name (int);
 
-extern void dw2_output_indirect_constants PARAMS ((void));
+extern void dw2_output_indirect_constants (void);
diff --git a/gcc/gcov.c b/gcc/gcov.c
index c8fc6ad5d31c..276918f051b7 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -1,7 +1,7 @@
 /* Gcov.c: prepend line execution counts and branch probabilities to a
    source file.
    Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+   1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
    Contributed by James E. Wilson of Cygnus Support.
    Mangled by Bob Manson of Cygnus Support.
    Mangled further by Nathan Sidwell <nathan@codesourcery.com>
@@ -102,7 +102,7 @@ typedef struct arc_info
 
   /* Next branch on line.  */
   struct arc_info *line_next;
-  
+
   /* Links to next arc on src and dst lists.  */
   struct arc_info *succ_next;
   struct arc_info *pred_next;
@@ -159,7 +159,7 @@ typedef struct block_info
   /* Temporary chain for solving graph, and for chaining blocks on one
      line.  */
   struct block_info *chain;
-  
+
 } block_t;
 
 /* Describes a single function. Contains an array of basic blocks.  */
@@ -186,7 +186,7 @@ typedef struct function_info
 
   /* Next function in same source file.  */
   struct function_info *line_next;
-  
+
   /* Next function.  */
   struct function_info *next;
 } function_t;
@@ -197,14 +197,14 @@ typedef struct coverage_info
 {
   int lines;
   int lines_executed;
-  
+
   int branches;
   int branches_executed;
   int branches_taken;
-  
+
   int calls;
   int calls_executed;
-  
+
   char *name;
 } coverage_t;
 
@@ -216,7 +216,7 @@ typedef struct line_info
   gcov_type count;	   /* execution count */
   union
   {
-    arc_t *branches; 	   /* branches from blocks that end on this
+    arc_t *branches;	   /* branches from blocks that end on this
 			      line. Used for branch-counts when not
 			      all-blocks mode.  */
     block_t *blocks;       /* blocks which start on this line.  Used
@@ -243,7 +243,7 @@ typedef struct source_info
   /* Functions in this source file.  These are in ascending line
      number order.  */
   function_t *functions;
-  
+
   /* Next source file.  */
   struct source_info *next;
 } source_t;
@@ -280,7 +280,7 @@ static char *da_file_name;
 
 static int flag_branches = 0;
 
-/* Show unconditional branches too.  */ 
+/* Show unconditional branches too.  */
 static int flag_unconditional = 0;
 
 /* Output a gcov file if this is true.  This is on by default, and can
@@ -320,34 +320,32 @@ static int flag_preserve_paths = 0;
 static int flag_counts = 0;
 
 /* Forward declarations.  */
-static void fnotice PARAMS ((FILE *, const char *, ...)) ATTRIBUTE_PRINTF_2;
-static int process_args PARAMS ((int, char **));
-static void print_usage PARAMS ((int)) ATTRIBUTE_NORETURN;
-static void print_version PARAMS ((void)) ATTRIBUTE_NORETURN;
-static void process_file PARAMS ((const char *));
-static void create_file_names PARAMS ((const char *));
-static source_t *find_source PARAMS ((const char *));
-static int read_graph_file PARAMS ((void));
-static int read_count_file PARAMS ((void));
-static void solve_flow_graph PARAMS ((function_t *));
-static void add_branch_counts PARAMS ((coverage_t *, const arc_t *));
-static void add_line_counts PARAMS ((coverage_t *, function_t *));
-static void function_summary PARAMS ((const coverage_t *, const char *));
-static const char *format_gcov PARAMS ((gcov_type, gcov_type, int));
-static void accumulate_line_counts PARAMS ((source_t *));
-static int output_branch_count PARAMS ((FILE *, int, const arc_t *));
-static void output_lines PARAMS ((FILE *, const source_t *));
-static char *make_gcov_file_name PARAMS ((const char *, const char *));
-static void release_structures PARAMS ((void));
-extern int main PARAMS ((int, char **));
+static void fnotice (FILE *, const char *, ...) ATTRIBUTE_PRINTF_2;
+static int process_args (int, char **);
+static void print_usage (int) ATTRIBUTE_NORETURN;
+static void print_version (void) ATTRIBUTE_NORETURN;
+static void process_file (const char *);
+static void create_file_names (const char *);
+static source_t *find_source (const char *);
+static int read_graph_file (void);
+static int read_count_file (void);
+static void solve_flow_graph (function_t *);
+static void add_branch_counts (coverage_t *, const arc_t *);
+static void add_line_counts (coverage_t *, function_t *);
+static void function_summary (const coverage_t *, const char *);
+static const char *format_gcov (gcov_type, gcov_type, int);
+static void accumulate_line_counts (source_t *);
+static int output_branch_count (FILE *, int, const arc_t *);
+static void output_lines (FILE *, const source_t *);
+static char *make_gcov_file_name (const char *, const char *);
+static void release_structures (void);
+extern int main (int, char **);
 
 int
-main (argc, argv)
-     int argc;
-     char **argv;
+main (int argc, char **argv)
 {
   int argno;
-  
+
   gcc_init_libintl ();
 
   argno = process_args (argc, argv);
@@ -357,10 +355,10 @@ main (argc, argv)
   for (; argno != argc; argno++)
     {
       release_structures ();
-      
+
       process_file (argv[argno]);
     }
-  
+
   return 0;
 }
 
@@ -368,7 +366,7 @@ static void
 fnotice (FILE *file, const char *msgid, ...)
 {
   va_list ap;
-  
+
   va_start (ap, msgid);
   vfprintf (file, _(msgid), ap);
   va_end (ap);
@@ -376,10 +374,10 @@ fnotice (FILE *file, const char *msgid, ...)
 
 /* More 'friendly' abort that prints the line and file.
    config.h can #define abort fancy_abort if you like that sort of thing.  */
-extern void fancy_abort PARAMS ((void)) ATTRIBUTE_NORETURN;
+extern void fancy_abort (void) ATTRIBUTE_NORETURN;
 
 void
-fancy_abort ()
+fancy_abort (void)
 {
   fnotice (stderr, "Internal gcov abort.\n");
   exit (FATAL_EXIT_CODE);
@@ -389,12 +387,11 @@ fancy_abort ()
    otherwise the output of --help.  */
 
 static void
-print_usage (error_p)
-     int error_p;
+print_usage (int error_p)
 {
   FILE *file = error_p ? stderr : stdout;
   int status = error_p ? FATAL_EXIT_CODE : SUCCESS_EXIT_CODE;
-  
+
   fnotice (file, "Usage: gcov [OPTION]... SOURCEFILE\n\n");
   fnotice (file, "Print code coverage information.\n\n");
   fnotice (file, "  -h, --help                      Print this help, then exit\n");
@@ -418,7 +415,7 @@ print_usage (error_p)
 /* Print version information and exit.  */
 
 static void
-print_version ()
+print_version (void)
 {
   char v[4];
   unsigned version = GCOV_VERSION;
@@ -454,9 +451,7 @@ static const struct option options[] =
 /* Process args, return index to first non-arg.  */
 
 static int
-process_args (argc, argv)
-     int argc;
-     char **argv;
+process_args (int argc, char **argv)
 {
   int opt;
 
@@ -509,25 +504,24 @@ process_args (argc, argv)
 /* Process a single source file.  */
 
 static void
-process_file (file_name)
-     const char *file_name;
+process_file (const char *file_name)
 {
   source_t *src;
   function_t *fn;
-  
+
   create_file_names (file_name);
   if (read_graph_file ())
     return;
-  
+
   if (!functions)
     {
       fnotice (stderr, "%s:no functions found\n", bbg_file_name);
       return;
     }
-  
+
   if (read_count_file ())
     return;
-  
+
   for (fn = functions; fn; fn = fn->next)
     solve_flow_graph (fn);
   for (src = sources; src; src = src->next)
@@ -535,7 +529,7 @@ process_file (file_name)
   for (fn = functions; fn; fn = fn->next)
     {
       coverage_t coverage;
-      
+
       memset (&coverage, 0, sizeof (coverage));
       coverage.name = fn->name;
       add_line_counts (flag_function_summary ? &coverage : NULL, fn);
@@ -545,7 +539,7 @@ process_file (file_name)
 	  fnotice (stdout, "\n");
 	}
     }
-  
+
   for (src = sources; src; src = src->next)
     {
       accumulate_line_counts (src);
@@ -554,7 +548,7 @@ process_file (file_name)
 	{
 	  char *gcov_file_name = make_gcov_file_name (file_name, src->name);
 	  FILE *gcov_file = fopen (gcov_file_name, "w");
-	  
+
 	  if (gcov_file)
 	    {
 	      fnotice (stdout, "%s:creating `%s'\n",
@@ -577,17 +571,17 @@ process_file (file_name)
 /* Release all memory used.  */
 
 static void
-release_structures ()
+release_structures (void)
 {
   function_t *fn;
   source_t *src;
-  
+
   free (bbg_file_name);
   free (da_file_name);
   da_file_name = bbg_file_name = NULL;
   bbg_file_time = 0;
   bbg_stamp = 0;
-  
+
   while ((src = sources))
     {
       sources = src->next;
@@ -595,12 +589,12 @@ release_structures ()
       free (src->name);
       free (src->lines);
     }
-  
+
   while ((fn = functions))
     {
       unsigned ix;
       block_t *block;
-      
+
       functions = fn->next;
       for (ix = fn->num_blocks, block = fn->blocks; ix--; block++)
 	{
@@ -626,14 +620,13 @@ release_structures ()
    the object *file*, and the data files are named from that.  */
 
 static void
-create_file_names (file_name)
-     const char *file_name;
+create_file_names (const char *file_name)
 {
   char *cptr;
   char *name;
   int length = strlen (file_name);
   int base;
-  
+
   if (object_directory && object_directory[0])
     {
       struct stat status;
@@ -641,7 +634,7 @@ create_file_names (file_name)
       length += strlen (object_directory) + 2;
       name = xmalloc (length);
       name[0] = 0;
-      
+
       base = !stat (object_directory, &status) && S_ISDIR (status.st_mode);
       strcat (name, object_directory);
       if (base && name[strlen (name) - 1] != '/')
@@ -653,21 +646,21 @@ create_file_names (file_name)
       name[0] = 0;
       base = 1;
     }
-  
+
   if (base)
     {
       /* Append source file name.  */
       cptr = strrchr (file_name, '/');
       strcat (name, cptr ? cptr + 1 : file_name);
     }
-  
+
   /* Remove the extension.  */
   cptr = strrchr (name, '.');
   if (cptr)
     *cptr = 0;
-  
+
   length = strlen (name);
-  
+
   bbg_file_name = xmalloc (length + strlen (GCOV_GRAPH_SUFFIX) + 1);
   strcpy (bbg_file_name, name);
   strcpy (bbg_file_name + length, GCOV_GRAPH_SUFFIX);
@@ -675,7 +668,7 @@ create_file_names (file_name)
   da_file_name = xmalloc (length + strlen (GCOV_DATA_SUFFIX) + 1);
   strcpy (da_file_name, name);
   strcpy (da_file_name + length, GCOV_DATA_SUFFIX);
-  
+
   return;
 }
 
@@ -683,18 +676,17 @@ create_file_names (file_name)
    FILE_NAME on creation */
 
 static source_t *
-find_source (file_name)
-     const char *file_name;
+find_source (const char *file_name)
 {
   source_t *src;
 
   if (!file_name)
     file_name = "<unknown>";
-  
+
   for (src = sources; src; src = src->next)
     if (!strcmp (file_name, src->name))
       return src;
-  
+
   src = (source_t *)xcalloc (1, sizeof (source_t));
   src->name = xstrdup (file_name);
   src->coverage.name = src->name;
@@ -708,7 +700,7 @@ find_source (file_name)
 /* Read the graph file. Return nonzero on fatal error.  */
 
 static int
-read_graph_file ()
+read_graph_file (void)
 {
   unsigned version;
   unsigned current_tag = 0;
@@ -716,7 +708,7 @@ read_graph_file ()
   source_t *src = NULL;
   unsigned ix;
   unsigned tag;
-  
+
   if (!gcov_open (bbg_file_name, 1))
     {
       fnotice (stderr, "%s:cannot open graph file\n", bbg_file_name);
@@ -735,7 +727,7 @@ read_graph_file ()
     {
       char v[4], e[4];
       unsigned required = GCOV_VERSION;
-      
+
       for (ix = 4; ix--; required >>= 8, version >>= 8)
 	{
 	  v[ix] = version;
@@ -763,7 +755,7 @@ read_graph_file ()
 	  function_name = xstrdup (gcov_read_string ());
 	  src = find_source (gcov_read_string ());
 	  lineno = gcov_read_unsigned ();
-	  
+
 	  fn = (function_t *)xcalloc (1, sizeof (function_t));
 	  fn->name = function_name;
 	  fn->ident = ident;
@@ -774,7 +766,7 @@ read_graph_file ()
 	  fn->next = functions;
 	  functions = fn;
 	  current_tag = tag;
-	  
+
 	  if (lineno >= src->num_lines)
 	    src->num_lines = lineno + 1;
 	  /* Now insert it into the source file's list of
@@ -799,7 +791,7 @@ read_graph_file ()
 	    {
 	      unsigned ix, num_blocks = length / 4;
 	      fn->num_blocks = num_blocks;
-	      
+
 	      fn->blocks
 		= (block_t *)xcalloc (fn->num_blocks, sizeof (block_t));
 	      for (ix = 0; ix != num_blocks; ix++)
@@ -813,30 +805,30 @@ read_graph_file ()
 
 	  if (src >= fn->num_blocks || fn->blocks[src].succ)
 	    goto corrupt;
-	  
+
 	  while (num_dests--)
 	    {
 	      struct arc_info *arc;
 	      unsigned dest = gcov_read_unsigned ();
 	      unsigned flags = gcov_read_unsigned ();
-	      
+
 	      if (dest >= fn->num_blocks)
 		goto corrupt;
 	      arc = (arc_t *) xcalloc (1, sizeof (arc_t));
-	      
+
 	      arc->dst = &fn->blocks[dest];
 	      arc->src = &fn->blocks[src];
-	      
+
 	      arc->count = 0;
 	      arc->count_valid = 0;
 	      arc->on_tree = !!(flags & GCOV_ARC_ON_TREE);
 	      arc->fake = !!(flags & GCOV_ARC_FAKE);
 	      arc->fall_through = !!(flags & GCOV_ARC_FALLTHROUGH);
-	      
+
 	      arc->succ_next = fn->blocks[src].succ;
 	      fn->blocks[src].succ = arc;
 	      fn->blocks[src].num_succ++;
-	      
+
 	      arc->pred_next = fn->blocks[dest].pred;
 	      fn->blocks[dest].pred = arc;
 	      fn->blocks[dest].num_pred++;
@@ -853,13 +845,13 @@ read_graph_file ()
 		  else
 		    {
 		      /* Non-local return from a callee of this
-  		         function. The destination block is a catch or
-  		         setjmp.  */
+		         function. The destination block is a catch or
+		         setjmp.  */
 		      arc->is_nonlocal_return = 1;
 		      fn->blocks[dest].is_nonlocal_return = 1;
 		    }
 		}
-	      
+
 	      if (!arc->on_tree)
 		fn->num_counts++;
 	    }
@@ -872,11 +864,11 @@ read_graph_file ()
 
 	  if (blockno >= fn->num_blocks || fn->blocks[blockno].u.line.encoding)
 	    goto corrupt;
-	  
+
 	  for (ix = 0; ;  )
 	    {
 	      unsigned lineno = gcov_read_unsigned ();
-	      
+
 	      if (lineno)
 		{
 		  if (!ix)
@@ -891,16 +883,16 @@ read_graph_file ()
 	      else
 		{
 		  const char *file_name = gcov_read_string ();
-		  
+
 		  if (!file_name)
 		    break;
 		  src = find_source (file_name);
-		  
+
 		  line_nos[ix++] = 0;
 		  line_nos[ix++] = src->index;
 		}
 	    }
-	  
+
 	  fn->blocks[blockno].u.line.encoding = line_nos;
 	  fn->blocks[blockno].u.line.num = ix;
 	}
@@ -921,9 +913,9 @@ read_graph_file ()
       return 1;
     }
   gcov_close ();
-  
+
   /* We built everything backwards, so nreverse them all */
-  
+
   /* Reverse sources. Not strictly necessary, but we'll then process
      them in the 'expected' order.  */
   {
@@ -944,7 +936,7 @@ read_graph_file ()
     for (fn_p = NULL, fn = functions; fn; fn_p = fn, fn = fn_n)
       {
 	unsigned ix;
-	
+
 	fn_n = fn->next;
 	fn->next = fn_p;
 
@@ -952,7 +944,7 @@ read_graph_file ()
 	for (ix = fn->num_blocks; ix--;)
 	  {
 	    arc_t *arc, *arc_p, *arc_n;
-	    
+
 	    for (arc_p = NULL, arc = fn->blocks[ix].succ; arc;
 		 arc_p = arc, arc = arc_n)
 	      {
@@ -979,7 +971,7 @@ read_graph_file ()
    function. Return nonzero if fatal error.  */
 
 static int
-read_count_file ()
+read_count_file (void)
 {
   unsigned ix;
   unsigned version;
@@ -1004,7 +996,7 @@ read_count_file ()
     {
       char v[4], e[4];
       unsigned desired = GCOV_VERSION;
-      
+
       for (ix = 4; ix--; desired >>= 8, version >>= 8)
 	{
 	  v[ix] = version;
@@ -1019,7 +1011,7 @@ read_count_file ()
       fnotice (stderr, "%s:stamp mismatch with graph file\n", da_file_name);
       goto cleanup;
     }
-  
+
   while ((tag = gcov_read_unsigned ()))
     {
       unsigned length = gcov_read_unsigned ();
@@ -1064,11 +1056,11 @@ read_count_file ()
 	{
 	  if (length != 8 * fn->num_counts)
 	    goto mismatch;
-	  
+
 	  if (!fn->counts)
 	    fn->counts
 	      = (gcov_type *)xcalloc (fn->num_counts, sizeof (gcov_type));
-	  
+
 	  for (ix = 0; ix != fn->num_counts; ix++)
 	    fn->counts[ix] += gcov_read_counter ();
 	}
@@ -1083,7 +1075,7 @@ read_count_file ()
 	       da_file_name);
       goto cleanup;
     }
-  
+
   gcov_close ();
   return 0;
 }
@@ -1092,8 +1084,7 @@ read_count_file ()
    to the blocks and the uninstrumented arcs.  */
 
 static void
-solve_flow_graph (fn)
-     function_t *fn;
+solve_flow_graph (function_t *fn)
 {
   unsigned ix;
   arc_t *arc;
@@ -1101,7 +1092,7 @@ solve_flow_graph (fn)
   block_t *blk;
   block_t *valid_blocks = NULL;    /* valid, but unpropagated blocks.  */
   block_t *invalid_blocks = NULL;  /* invalid, but inferable blocks.  */
-  
+
   if (fn->num_blocks < 2)
     fnotice (stderr, "%s:`%s' lacks entry and/or exit blocks\n",
 	     bbg_file_name, fn->name);
@@ -1114,7 +1105,7 @@ solve_flow_graph (fn)
 	/* We can't deduce the entry block counts from the lack of
 	   predecessors.  */
 	fn->blocks[0].num_pred = ~(unsigned)0;
-      
+
       if (fn->blocks[fn->num_blocks - 1].num_succ)
 	fnotice (stderr, "%s:`%s' has arcs from exit block\n",
 		 bbg_file_name, fn->name);
@@ -1131,12 +1122,12 @@ solve_flow_graph (fn)
       block_t const *prev_dst = NULL;
       int out_of_order = 0;
       int non_fake_succ = 0;
-      
+
       for (arc = blk->succ; arc; arc = arc->succ_next)
 	{
 	  if (!arc->fake)
 	    non_fake_succ++;
-	  
+
 	  if (!arc->on_tree)
 	    {
 	      if (count_ptr)
@@ -1168,7 +1159,7 @@ solve_flow_graph (fn)
 		  arc->dst->is_call_return = 1;
 	      }
 	}
-      
+
       /* Sort the successor arcs into ascending dst order. profile.c
 	 normally produces arcs in the right order, but sometimes with
 	 one or two out of order.  We're not using a particularly
@@ -1177,11 +1168,11 @@ solve_flow_graph (fn)
 	{
 	  arc_t *start = blk->succ;
 	  unsigned changes = 1;
-	  
+
 	  while (changes)
 	    {
 	      arc_t *arc, *arc_p, *arc_n;
-	      
+
 	      changes = 0;
 	      for (arc_p = NULL, arc = start; (arc_n = arc->succ_next);)
 		{
@@ -1205,7 +1196,7 @@ solve_flow_graph (fn)
 	    }
 	  blk->succ = start;
 	}
-      
+
       /* Place it on the invalid chain, it will be ignored if that's
 	 wrong.  */
       blk->invalid_chain = 1;
@@ -1219,7 +1210,7 @@ solve_flow_graph (fn)
 	{
 	  gcov_type total = 0;
 	  const arc_t *arc;
-	  
+
 	  invalid_blocks = blk->chain;
 	  blk->invalid_chain = 0;
 	  if (!blk->num_succ)
@@ -1230,7 +1221,7 @@ solve_flow_graph (fn)
 	      total += arc->count;
 	  else
 	    continue;
-	  
+
 	  blk->count = total;
 	  blk->count_valid = 1;
 	  blk->chain = valid_blocks;
@@ -1247,7 +1238,7 @@ solve_flow_graph (fn)
 	  if (blk->num_succ == 1)
 	    {
 	      block_t *dst;
-	      
+
 	      total = blk->count;
 	      inv_arc = NULL;
 	      for (arc = blk->succ; arc; arc = arc->succ_next)
@@ -1283,7 +1274,7 @@ solve_flow_graph (fn)
 	  if (blk->num_pred == 1)
 	    {
 	      block_t *src;
-	      
+
 	      total = blk->count;
 	      inv_arc = NULL;
 	      for (arc = blk->pred; arc; arc = arc->pred_next)
@@ -1318,7 +1309,7 @@ solve_flow_graph (fn)
 	    }
 	}
     }
-  
+
   /* If the graph has been correctly solved, every block will have a
      valid count.  */
   for (ix = 0; ix < fn->num_blocks; ix++)
@@ -1335,9 +1326,7 @@ solve_flow_graph (fn)
 /* Increment totals in COVERAGE according to arc ARC.  */
 
 static void
-add_branch_counts (coverage, arc)
-     coverage_t *coverage;
-     const arc_t *arc;
+add_branch_counts (coverage_t *coverage, const arc_t *arc)
 {
   if (arc->is_call_non_return)
     {
@@ -1362,22 +1351,20 @@ add_branch_counts (coverage, arc)
    format TOP.  Return pointer to a static string.  */
 
 static char const *
-format_gcov (top, bottom, dp)
-     gcov_type top, bottom;
-     int dp;
+format_gcov (gcov_type top, gcov_type bottom, int dp)
 {
   static char buffer[20];
-  
+
   if (dp >= 0)
     {
       float ratio = bottom ? (float)top / bottom : 0;
       int ix;
       unsigned limit = 100;
       unsigned percent;
-  
+
       for (ix = dp; ix--; )
 	limit *= 10;
-      
+
       percent = (unsigned) (ratio * limit + (float)0.5);
       if (percent <= 0 && top)
 	percent = 1;
@@ -1398,7 +1385,7 @@ format_gcov (top, bottom, dp)
     }
   else
     sprintf (buffer, HOST_WIDEST_INT_PRINT_DEC, (HOST_WIDEST_INT)top);
-  
+
   return buffer;
 }
 
@@ -1406,9 +1393,7 @@ format_gcov (top, bottom, dp)
 /* Output summary info for a function.  */
 
 static void
-function_summary (coverage, title)
-     const coverage_t *coverage;
-     const char *title;
+function_summary (const coverage_t *coverage, const char *title)
 {
   fnotice (stdout, "%s `%s'\n", title, coverage->name);
 
@@ -1454,13 +1439,11 @@ function_summary (coverage, title)
    removed and '..'  components are renamed to '^'.  */
 
 static char *
-make_gcov_file_name (input_name, src_name)
-     const char *input_name;
-     const char *src_name;
+make_gcov_file_name (const char *input_name, const char *src_name)
 {
   char *cptr;
   char *name = xmalloc (strlen (src_name) + strlen (input_name) + 10);
-  
+
   name[0] = 0;
   if (flag_long_names && strcmp (src_name, input_name))
     {
@@ -1469,43 +1452,43 @@ make_gcov_file_name (input_name, src_name)
       strcat (name, cptr ? cptr + 1 : input_name);
       strcat (name, "##");
     }
-   
+
   /* Generate the source filename part.  */
   cptr = flag_preserve_paths ? NULL : strrchr (src_name, '/');
   strcat (name, cptr ? cptr + 1 : src_name);
-  
+
   if (flag_preserve_paths)
     {
       /* Convert '/' to '#', remove '/./', convert '/../' to '/^/' */
       char *prev;
-      
+
       for (cptr = name; (cptr = strchr ((prev = cptr), '/'));)
- 	{
- 	  unsigned shift = 0;
- 	  
- 	  if (prev + 1 == cptr && prev[0] == '.')
- 	    {
- 	      /* Remove '.' */
- 	      shift = 2;
- 	    }
- 	  else if (prev + 2 == cptr && prev[0] == '.' && prev[1] == '.')
- 	    {
- 	      /* Convert '..' */
- 	      shift = 1;
- 	      prev[1] = '^';
- 	    }
- 	  else
- 	    *cptr++ = '#';
- 	  if (shift)
- 	    {
- 	      cptr = prev;
- 	      do
- 		prev[0] = prev[shift];
+	{
+	  unsigned shift = 0;
+
+	  if (prev + 1 == cptr && prev[0] == '.')
+	    {
+	      /* Remove '.' */
+	      shift = 2;
+	    }
+	  else if (prev + 2 == cptr && prev[0] == '.' && prev[1] == '.')
+	    {
+	      /* Convert '..' */
+	      shift = 1;
+	      prev[1] = '^';
+	    }
+	  else
+	    *cptr++ = '#';
+	  if (shift)
+	    {
+	      cptr = prev;
+	      do
+		prev[0] = prev[shift];
 	      while (*prev++);
- 	    }
- 	}
+	    }
+	}
     }
-  
+
   strcat (name, ".gcov");
   return name;
 }
@@ -1515,9 +1498,7 @@ make_gcov_file_name (input_name, src_name)
    the appropriate basic block.  */
 
 static void
-add_line_counts (coverage, fn)
-     coverage_t *coverage;
-     function_t *fn;
+add_line_counts (coverage_t *coverage, function_t *fn)
 {
   unsigned ix;
   line_t *line = NULL; /* this is propagated from one iteration to the
@@ -1560,13 +1541,13 @@ add_line_counts (coverage, fn)
       free (block->u.line.encoding);
       block->u.cycle.arc = NULL;
       block->u.cycle.ident = ~0U;
-      
+
       if (!ix || ix + 1 == fn->num_blocks)
 	/* Entry or exit block */;
       else if (flag_all_blocks)
 	{
 	  line_t *block_line = line ? line : &fn->src->lines[fn->line];
-	  
+
 	  block->chain = block_line->u.blocks;
 	  block_line->u.blocks = block;
 	}
@@ -1590,8 +1571,7 @@ add_line_counts (coverage, fn)
 /* Accumulate the line counts of a file.  */
 
 static void
-accumulate_line_counts (src)
-     source_t *src;
+accumulate_line_counts (source_t *src)
 {
   line_t *line;
   function_t *fn, *fn_p, *fn_n;
@@ -1605,20 +1585,20 @@ accumulate_line_counts (src)
       fn->line_next = fn_p;
     }
   src->functions = fn_p;
-  
+
   for (ix = src->num_lines, line = src->lines; ix--; line++)
     {
       if (!flag_all_blocks)
 	{
 	  arc_t *arc, *arc_p, *arc_n;
-	  
+
 	  /* Total and reverse the branch information.  */
 	  for (arc = line->u.branches, arc_p = NULL; arc;
 	       arc_p = arc, arc = arc_n)
 	    {
 	      arc_n = arc->line_next;
 	      arc->line_next = arc_p;
-	      
+
 	      add_branch_counts (&src->coverage, arc);
 	    }
 	  line->u.branches = arc_p;
@@ -1633,7 +1613,7 @@ accumulate_line_counts (src)
 	     and add the transition counts of those cycles.  */
 	  block_t *block, *block_p, *block_n;
 	  gcov_type count = 0;
-	  
+
 	  /* Reverse the block information.  */
 	  for (block = line->u.blocks, block_p = NULL; block;
 	       block_p = block, block = block_n)
@@ -1643,7 +1623,7 @@ accumulate_line_counts (src)
 	      block->u.cycle.ident = ix;
 	    }
 	  line->u.blocks = block_p;
-	  
+
 	  /* Sum the entry arcs.  */
 	  for (block = line->u.blocks; block; block = block->chain)
 	    {
@@ -1677,7 +1657,7 @@ accumulate_line_counts (src)
 	    {
 	      block_t *head = block;
 	      arc_t *arc;
-	      
+
 	    next_vertex:;
 	      arc = head->succ;
 	    current_vertex:;
@@ -1694,14 +1674,14 @@ accumulate_line_counts (src)
 		      arc = arc->succ_next;
 		      continue;
 		    }
-		  
+
 		  if (dst == block)
 		    {
 		      /* Found a closing arc.  */
 		      gcov_type cycle_count = arc->count;
 		      arc_t *cycle_arc = arc;
 		      arc_t *probe_arc;
-		      
+
 		      /* Locate the smallest arc count of the loop.  */
 		      for (dst = head; (probe_arc = dst->u.cycle.arc);
 			   dst = probe_arc->src)
@@ -1710,7 +1690,7 @@ accumulate_line_counts (src)
 			    cycle_count = probe_arc->count;
 			    cycle_arc = probe_arc;
 			  }
-		      
+
 		      count += cycle_count;
 		      cycle_arc->cycle = 1;
 		      /* Unwind to the cyclic arc.  */
@@ -1723,7 +1703,7 @@ accumulate_line_counts (src)
 		      arc = arc->succ_next;
 		      continue;
 		    }
-		  
+
 		  /* Add new block to chain.  */
 		  dst->u.cycle.arc = arc;
 		  head = dst;
@@ -1746,7 +1726,7 @@ accumulate_line_counts (src)
 
 	  line->count = count;
 	}
-      
+
       if (line->exists)
 	{
 	  src->coverage.lines++;
@@ -1760,12 +1740,9 @@ accumulate_line_counts (src)
    anything is output.  */
 
 static int
-output_branch_count (gcov_file, ix, arc)
-     FILE *gcov_file;
-     int ix;
-     const arc_t *arc;
+output_branch_count (FILE *gcov_file, int ix, const arc_t *arc)
 {
-  
+
   if (arc->is_call_non_return)
     {
       if (arc->src->count)
@@ -1797,7 +1774,7 @@ output_branch_count (gcov_file, ix, arc)
   else
     return 0;
   return 1;
-  
+
 }
 
 /* Read in the source file one line at a time, and output that line to
@@ -1805,12 +1782,10 @@ output_branch_count (gcov_file, ix, arc)
    information.  */
 
 static void
-output_lines (gcov_file, src)
-     FILE *gcov_file;
-     const source_t *src;
+output_lines (FILE *gcov_file, const source_t *src)
 {
   FILE *source_file;
-  unsigned line_num;       	/* current line number.  */
+  unsigned line_num;	/* current line number.  */
   const line_t *line;           /* current line info ptr.  */
   char string[STRING_SIZE];     /* line buffer.  */
   char const *retval = "";	/* status of source file reading.  */
@@ -1822,7 +1797,7 @@ output_lines (gcov_file, src)
   fprintf (gcov_file, "%9s:%5d:Runs:%u\n", "-", 0,
 	   object_summary.ctrs[GCOV_COUNTER_ARCS].runs);
   fprintf (gcov_file, "%9s:%5d:Programs:%u\n", "-", 0, program_count);
-  
+
   source_file = fopen (src->name, "r");
   if (!source_file)
     {
@@ -1832,7 +1807,7 @@ output_lines (gcov_file, src)
   else
     {
       struct stat status;
-      
+
       if (!fstat (fileno (source_file), &status)
 	  && status.st_mtime > bbg_file_time)
 	{
@@ -1854,7 +1829,7 @@ output_lines (gcov_file, src)
 	  for (; arc; arc = arc->pred_next)
 	    if (arc->fake)
 	      return_count -= arc->count;
-	  
+
 	  fprintf (gcov_file, "function %s", fn->name);
 	  fprintf (gcov_file, " called %s",
 		   format_gcov (fn->blocks[0].count, 0, -1));
@@ -1864,17 +1839,17 @@ output_lines (gcov_file, src)
 		   format_gcov (fn->blocks_executed, fn->num_blocks - 2, 0));
 	  fprintf (gcov_file, "\n");
 	}
-      
+
       /* For lines which don't exist in the .bb file, print '-' before
- 	 the source line.  For lines which exist but were never
- 	 executed, print '#####' before the source line.  Otherwise,
- 	 print the execution count before the source line.  There are
- 	 16 spaces of indentation added before the source line so that
- 	 tabs won't be messed up.  */
+	 the source line.  For lines which exist but were never
+	 executed, print '#####' before the source line.  Otherwise,
+	 print the execution count before the source line.  There are
+	 16 spaces of indentation added before the source line so that
+	 tabs won't be messed up.  */
       fprintf (gcov_file, "%9s:%5u:",
 	       !line->exists ? "-" : !line->count ? "#####"
 	       : format_gcov (line->count, 0, -1), line_num);
-      
+
       if (retval)
 	{
 	  /* Copy source line.  */
@@ -1895,7 +1870,7 @@ output_lines (gcov_file, src)
 	  block_t *block;
 	  arc_t *arc;
 	  int ix, jx;
-	  
+
 	  for (ix = jx = 0, block = line->u.blocks; block;
 	       block = block->chain)
 	    {
@@ -1913,12 +1888,12 @@ output_lines (gcov_file, src)
 	{
 	  int ix;
 	  arc_t *arc;
-	  
+
 	  for (ix = 0, arc = line->u.branches; arc; arc = arc->line_next)
 	    ix += output_branch_count (gcov_file, ix, arc);
 	}
     }
-  
+
   /* Handle all remaining source lines.  There may be lines after the
      last line of code.  */
   if (retval)
@@ -1926,7 +1901,7 @@ output_lines (gcov_file, src)
       for (; (retval = fgets (string, STRING_SIZE, source_file)); line_num++)
 	{
 	  fprintf (gcov_file, "%9s:%5u:%s", "-", line_num, retval);
-	  
+
 	  while (!retval[0] || retval[strlen (retval) - 1] != '\n')
 	    {
 	      retval = fgets (string, STRING_SIZE, source_file);
@@ -1936,7 +1911,7 @@ output_lines (gcov_file, src)
 	    }
 	}
     }
-  
+
   if (source_file)
     fclose (source_file);
 }
diff --git a/gcc/gengtype-lex.l b/gcc/gengtype-lex.l
index 36b1596651e1..ad70ba82e630 100644
--- a/gcc/gengtype-lex.l
+++ b/gcc/gengtype-lex.l
@@ -1,6 +1,6 @@
 /* -*- indented-text -*- */
 /* Process source files and output type information.
-   Copyright (C) 2002 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -33,15 +33,13 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #undef YY_USE_PROTOS
 #define YY_DECL int yylex ()
 
-static void update_lineno PARAMS ((const char *l, size_t len));
+static void update_lineno (const char *l, size_t len);
 
 struct fileloc lexer_line;
 int lexer_toplevel_done;
 
 static void 
-update_lineno (l, len)
-     const char *l;
-     size_t len;
+update_lineno (const char *l, size_t len)
 {
   while (len-- > 0)
     if (*l++ == '\n')
@@ -305,15 +303,13 @@ ITYPE	{IWORD}({WS}{IWORD})*
 %%
 
 void
-yyerror (s)
-     const char *s;
+yyerror (const char *s)
 {
   error_at_line (&lexer_line, s);
 }
 
 void
-parse_file (fname)
-      const char *fname;
+parse_file (const char *fname)
 {
   yyin = fopen (fname, "r");
   lexer_line.file = fname;
diff --git a/gcc/sched-int.h b/gcc/sched-int.h
index f255b068ded8..0ab0d65aee4e 100644
--- a/gcc/sched-int.h
+++ b/gcc/sched-int.h
@@ -126,29 +126,29 @@ struct sched_info
   void (*init_ready_list) (struct ready_list *);
   /* Called after taking an insn from the ready list.  Returns nonzero if
      this insn can be scheduled, nonzero if we should silently discard it.  */
-  int (*can_schedule_ready_p) PARAMS ((rtx));
+  int (*can_schedule_ready_p) (rtx);
   /* Return nonzero if there are more insns that should be scheduled.  */
-  int (*schedule_more_p) PARAMS ((void));
+  int (*schedule_more_p) (void);
   /* Called after an insn has all its dependencies resolved.  Return nonzero
      if it should be moved to the ready list or the queue, or zero if we
      should silently discard it.  */
-  int (*new_ready) PARAMS ((rtx));
+  int (*new_ready) (rtx);
   /* Compare priority of two insns.  Return a positive number if the second
      insn is to be preferred for scheduling, and a negative one if the first
      is to be preferred.  Zero if they are equally good.  */
-  int (*rank) PARAMS ((rtx, rtx));
+  int (*rank) (rtx, rtx);
   /* Return a string that contains the insn uid and optionally anything else
      necessary to identify this insn in an output.  It's valid to use a
      static buffer for this.  The ALIGNED parameter should cause the string
      to be formatted so that multiple output lines will line up nicely.  */
-  const char *(*print_insn) PARAMS ((rtx, int));
+  const char *(*print_insn) (rtx, int);
   /* Return nonzero if an insn should be included in priority
      calculations.  */
-  int (*contributes_to_priority) PARAMS ((rtx, rtx));
+  int (*contributes_to_priority) (rtx, rtx);
   /* Called when computing dependencies for a JUMP_INSN.  This function
      should store the set of registers that must be considered as set by
      the jump in the regset.  */
-  void (*compute_jump_reg_dependencies) PARAMS ((rtx, regset));
+  void (*compute_jump_reg_dependencies) (rtx, regset);
 
   /* The boundaries of the set of insns to be scheduled.  */
   rtx prev_head, next_tail;
diff --git a/gcc/timevar.c b/gcc/timevar.c
index 776f575eb692..6fa1610cc5d3 100644
--- a/gcc/timevar.c
+++ b/gcc/timevar.c
@@ -80,7 +80,7 @@ struct tms
 #else
 #ifdef HAVE_GETRUSAGE
 # if defined HAVE_DECL_GETRUSAGE && !HAVE_DECL_GETRUSAGE
-  extern int getrusage PARAMS ((int, struct rusage *));
+  extern int getrusage (int, struct rusage *);
 # endif
 # define USE_GETRUSAGE
 # define HAVE_USER_TIME
@@ -88,7 +88,7 @@ struct tms
 #else
 #ifdef HAVE_CLOCK
 # if defined HAVE_DECL_CLOCK && !HAVE_DECL_CLOCK
-  extern clock_t clock PARAMS ((void));
+  extern clock_t clock (void);
 # endif
 # define USE_CLOCK
 # define HAVE_USER_TIME
-- 
GitLab