diff mbox

gcc.dg/tree-ssa/ cleanup

Message ID 20141002113020.GF32230@redhat.com
State New
Headers show

Commit Message

Marek Polacek Oct. 2, 2014, 11:30 a.m. UTC
This patch is a cleanup of tests in gcc.dg/tree-ssa/ directory.
It is quite large, but trivial - mostly only missing declarations
and defaulting to int.  See 
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02656.html
for more info.

Tested on x86_64-linux: vanilla results == results with this patch ==
results with this patch and gnu11 as a default.

Ok for trunk?

2014-10-02  Marek Polacek  <polacek@redhat.com>

	* gcc.dg/tree-ssa/20030530-2.c: Add function declarations.
	* gcc.dg/tree-ssa/20030708-1.c: Likewise.
	* gcc.dg/tree-ssa/20030709-2.c: Likewise.
	* gcc.dg/tree-ssa/20030710-1.c: Likewise.
	* gcc.dg/tree-ssa/20030711-1.c: Likewise.
	* gcc.dg/tree-ssa/20030711-2.c: Likewise.
	* gcc.dg/tree-ssa/20030711-3.c: Likewise.
	* gcc.dg/tree-ssa/20030728-1.c: Likewise.
	* gcc.dg/tree-ssa/20030731-1.c: Likewise.
	* gcc.dg/tree-ssa/20030731-2.c: Likewise.
	* gcc.dg/tree-ssa/20030807-1.c: Likewise.
	* gcc.dg/tree-ssa/20030807-3.c: Likewise.
	* gcc.dg/tree-ssa/20030807-7.c: Likewise.
	* gcc.dg/tree-ssa/20030807-9.c: Likewise.
	* gcc.dg/tree-ssa/20030814-2.c: Likewise.
	* gcc.dg/tree-ssa/20030814-3.c: Likewise.
	* gcc.dg/tree-ssa/20030814-4.c: Likewise.
	* gcc.dg/tree-ssa/20030814-5.c: Likewise.
	* gcc.dg/tree-ssa/20030820-1.c: Likewise.
	* gcc.dg/tree-ssa/20030820-2.c: Likewise.
	* gcc.dg/tree-ssa/20030821-1.c: Likewise.
	* gcc.dg/tree-ssa/20030917-1.c: Likewise.
	* gcc.dg/tree-ssa/20030917-2.c: Likewise.
	* gcc.dg/tree-ssa/20031022-1.c: Likewise.
	* gcc.dg/tree-ssa/20040209-1.c: Likewise.
	* gcc.dg/tree-ssa/20040211-1.c: Likewise.
	* gcc.dg/tree-ssa/alias-13.c: Likewise.
	* gcc.dg/tree-ssa/alias-28.c: Likewise.
	* gcc.dg/tree-ssa/asm-3.c: Likewise.
	* gcc.dg/tree-ssa/coalesce-1.c: Likewise.
	* gcc.dg/tree-ssa/foldstring-1.c: Likewise.
	* gcc.dg/tree-ssa/forwprop-25.c: Likewise.
	* gcc.dg/tree-ssa/forwprop-26.c: Likewise.
	* gcc.dg/tree-ssa/isolate-3.c: Likewise.
	* gcc.dg/tree-ssa/isolate-5.c: Likewise.
	* gcc.dg/tree-ssa/loadpre7.c: Likewise.
	* gcc.dg/tree-ssa/pr22117.c: Likewise.
	* gcc.dg/tree-ssa/pr23744.c: Likewise.
	* gcc.dg/tree-ssa/pr24117.c: Likewise.
	* gcc.dg/tree-ssa/pr24840.c: Likewise.
	* gcc.dg/tree-ssa/pr25734.c: Likewise.
	* gcc.dg/tree-ssa/pr33723.c: Likewise.
	* gcc.dg/tree-ssa/pr33920.c: Likewise.
	* gcc.dg/tree-ssa/pr34146-2.c: Likewise.
	* gcc.dg/tree-ssa/pr34146.c: Likewise.
	* gcc.dg/tree-ssa/pr38385.c: Likewise.
	* gcc.dg/tree-ssa/pr49642-1.c: Likewise.
	* gcc.dg/tree-ssa/pr49642-2.c: Likewise.
	* gcc.dg/tree-ssa/pr59597.c: Likewise.
	* gcc.dg/tree-ssa/sra-1.c: Likewise.
	* gcc.dg/tree-ssa/sra-2.c: Likewise.
	* gcc.dg/tree-ssa/sra-5.c: Likewise.
	* gcc.dg/tree-ssa/sra-6.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ccp-10.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ccp-2.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ccp-31.c: Likewise.
	* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Likewise.
	* gcc.dg/tree-ssa/ssa-pre-14.c: Likewise.
	* gcc.dg/tree-ssa/ssa-pre-29.c: Likewise.
	* gcc.dg/tree-ssa/ssa-vrp-thread-1.c: Likewise.
	* gcc.dg/tree-ssa/vrp46.c: Likewise.
	* gcc.dg/tree-ssa/vrp56.c: Likewise.
	* gcc.dg/tree-ssa/vrp67.c: Likewise.
	* gcc.dg/tree-ssa/vrp72.c: Likewise.
	* gcc.dg/tree-ssa/vrp73.c: Likewise.
	* gcc.dg/tree-ssa/vrp75.c: Likewise.
	* gcc.dg/tree-ssa/20030611-1.c: Fix defaulting to int.
	* gcc.dg/tree-ssa/20030703-1.c: Likewise.
	* gcc.dg/tree-ssa/20030729-1.c: Likewise.
	* gcc.dg/tree-ssa/20030807-11.c: Likewise.
	* gcc.dg/tree-ssa/20030917-3.c: Likewise.
	* gcc.dg/tree-ssa/20040121-1.c: Likewise.
	* gcc.dg/tree-ssa/20040216-1.c: Likewise.
	* gcc.dg/tree-ssa/20040302-1.c: Likewise.
	* gcc.dg/tree-ssa/20040319-1.c: Likewise.
	* gcc.dg/tree-ssa/20040326-2.c: Likewise.
	* gcc.dg/tree-ssa/20040729-1.c: Likewise.
	* gcc.dg/tree-ssa/attr-alias-2.c: Likewise.
	* gcc.dg/tree-ssa/cunroll-1.c: Likewise.
	* gcc.dg/tree-ssa/cunroll-3.c: Likewise.
	* gcc.dg/tree-ssa/cunroll-5.c: Likewise.
	* gcc.dg/tree-ssa/foldconst-4.c: Likewise.
	* gcc.dg/tree-ssa/foldconst-5.c: Likewise.
	* gcc.dg/tree-ssa/ifc-4.c: Likewise.
	* gcc.dg/tree-ssa/ifc-6.c: Likewise.
	* gcc.dg/tree-ssa/inline-10.c: Likewise.
	* gcc.dg/tree-ssa/inline-9.c: Likewise.
	* gcc.dg/tree-ssa/ipa-cp-1.c: Likewise.
	* gcc.dg/tree-ssa/ipa-split-5.c: Likewise.
	* gcc.dg/tree-ssa/local-pure-const.c: Likewise.
	* gcc.dg/tree-ssa/nonzero-1.c: Likewise.
	* gcc.dg/tree-ssa/pr23434.c: Likewise.
	* gcc.dg/tree-ssa/pr33922.c: Likewise.
	* gcc.dg/tree-ssa/scev-3.c: Likewise.
	* gcc.dg/tree-ssa/scev-4.c: Likewise.
	* gcc.dg/tree-ssa/scev-5.c: Likewise.
	* gcc.dg/tree-ssa/ssa-dce-1.c: Likewise.
	* gcc.dg/tree-ssa/ssa-dse-4.c: Likewise.
	* gcc.dg/tree-ssa/ssa-dse-9.c: Likewise.
	* gcc.dg/tree-ssa/vrp01.c: Likewise.
	* gcc.dg/tree-ssa/vrp02.c: Likewise.
	* gcc.dg/tree-ssa/vrp03.c: Likewise.
	* gcc.dg/tree-ssa/vrp04.c: Likewise.
	* gcc.dg/tree-ssa/vrp05.c: Likewise.
	* gcc.dg/tree-ssa/vrp07.c: Likewise.
	* gcc.dg/tree-ssa/vrp08.c: Likewise.
	* gcc.dg/tree-ssa/vrp10.c: Likewise.
	* gcc.dg/tree-ssa/vrp11.c: Likewise.
	* gcc.dg/tree-ssa/vrp14.c: Likewise.
	* gcc.dg/tree-ssa/wholeprogram-1.c: Likewise.
	* gcc.dg/tree-ssa/writeonly.c: Likewise.
	* gcc.dg/tree-ssa/20030807-2.c: Add function declarations.  Fix
	defaulting to int.
	* gcc.dg/tree-ssa/20030814-1.c: Likewise.
	* gcc.dg/tree-ssa/20040326-1.c: Likewise.
	* gcc.dg/tree-ssa/20041008-1.c: Likewise.
	* gcc.dg/tree-ssa/20050719-1.c: Likewise.
	* gcc.dg/tree-ssa/20070302-1.c: Likewise.
	* gcc.dg/tree-ssa/attr-alias.c: Likewise.
	* gcc.dg/tree-ssa/builtin-expect-1.c: Likewise.
	* gcc.dg/tree-ssa/builtin-expect-2.c: Likewise.
	* gcc.dg/tree-ssa/builtin-expect-3.c: Likewise.
	* gcc.dg/tree-ssa/builtin-expect-4.c: Likewise.
	* gcc.dg/tree-ssa/builtin-expect-5.c: Likewise.
	* gcc.dg/tree-ssa/cunroll-2.c: Likewise.
	* gcc.dg/tree-ssa/cunroll-4.c: Likewise.
	* gcc.dg/tree-ssa/cunroll-9.c: Likewise.
	* gcc.dg/tree-ssa/foldconst-2.c: Likewise.
	* gcc.dg/tree-ssa/foldconst-3.c: Likewise.
	* gcc.dg/tree-ssa/forwprop-28.c: Likewise.
	* gcc.dg/tree-ssa/inline-5.c: Likewise.
	* gcc.dg/tree-ssa/inline-6.c: Likewise.
	* gcc.dg/tree-ssa/ipa-split-1.c: Likewise.
	* gcc.dg/tree-ssa/ipa-split-2.c: Likewise.
	* gcc.dg/tree-ssa/ivopts-2.c: Likewise.
	* gcc.dg/tree-ssa/ivopts-3.c: Likewise.
	* gcc.dg/tree-ssa/loadpre8.c: Likewise.
	* gcc.dg/tree-ssa/loop-20.c: Likewise.
	* gcc.dg/tree-ssa/loop-38.c: Likewise.
	* gcc.dg/tree-ssa/pr20913.c: Likewise.
	* gcc.dg/tree-ssa/pr21582.c: Likewise.
	* gcc.dg/tree-ssa/pr24670.c: Likewise.
	* gcc.dg/tree-ssa/ssa-ccp-12.c: Likewise.
	* gcc.dg/tree-ssa/vrp06.c: Likewise.
	* gcc.dg/tree-ssa/vrp09.c: Likewise.
	* gcc.dg/tree-ssa/vrp12.c: Likewise.
	* gcc.dg/tree-ssa/vrp13.c: Likewise.
	* gcc.dg/tree-ssa/vrp23.c: Likewise.
	* gcc.dg/tree-ssa/vrp24.c: Likewise.
	* gcc.dg/tree-ssa/vrp25.c: Likewise.
	* gcc.dg/tree-ssa/vrp55.c: Likewise.
	* gcc.dg/tree-ssa/20030807-8.c: Add function declarations.  Use
	-fgnu89-inline.
	* gcc.dg/tree-ssa/inline-7.c: Use -fgnu89-inline.
	* gcc.dg/tree-ssa/recip-6.c: Fix typo.
	* gcc.dg/tree-ssa/vrp27.c: Return 0 instead of nothing.


	Marek

Comments

Jakub Jelinek Oct. 2, 2014, 11:34 a.m. UTC | #1
On Thu, Oct 02, 2014 at 01:30:21PM +0200, Marek Polacek wrote:
> This patch is a cleanup of tests in gcc.dg/tree-ssa/ directory.
> It is quite large, but trivial - mostly only missing declarations
> and defaulting to int.  See 
> https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02656.html
> for more info.
> 
> Tested on x86_64-linux: vanilla results == results with this patch ==
> results with this patch and gnu11 as a default.
> 
> Ok for trunk?

Wouldn't it be worthwhile to avoid such changes for dozen or two randomly
selected testcases from these and instead add -std=gnu89 for them?
Just making sure we don't get rid of all the tests for non-prototyped call
and/or defaulting to int.

	Jakub
diff mbox

Patch

diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030530-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030530-2.c
index 3d4ba4f..c16196b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030530-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030530-2.c
@@ -7,6 +7,7 @@  typedef struct rs6000_stack {
 } rs6000_stack_t;
 extern char regs_ever_live[113];
 extern rs6000_stack_t *rs6000_stack_info (void);
+extern void gen_rtx_REG (int);
 void
 rs6000_emit_prologue (int i, rs6000_stack_t *info)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030611-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030611-1.c
index fac91be..c419094 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030611-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030611-1.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
  
 extern int square (int) __attribute__ ((__const__));
+int
 shit(int a)
 {
   return square (a) + square (a);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c
index fa59923..943f004 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c
@@ -4,6 +4,7 @@ 
 extern void abort (void);
 extern int blah[];
 
+void
 foo(int index)
 {
   if (blah [(unsigned int)index] != 0)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c
index b3be8a9..5d083fb 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c
@@ -17,6 +17,8 @@  struct rtx_def
   enum rtx_code code:16;
 };
 
+extern void blah (rtx *);
+
 int
 nonlocal_mentioned_p (x)
      rtx x;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030709-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030709-2.c
index f99598d..74014ba 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030709-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030709-2.c
@@ -27,6 +27,7 @@  union tree_node
 {
   struct tree_decl decl;
 };
+int make_decl_rtl (tree, int);
 void *
 get_alias_set (t)
      tree t;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c
index c344d48..edf51c5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
 
 extern void abort (void);
+extern void blah (void);
 union tree_node;
 typedef union tree_node *tree;
 struct tree_vec
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c
index 1855580..32901a2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
  
 extern void abort (void);
+extern void blah (void);
 
 union tree_node;
 typedef union tree_node *tree;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-2.c
index 44dd253..10396dd 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-2.c
@@ -31,6 +31,7 @@  union tree_node
 {
   struct tree_decl decl;
 };
+void make_decl_rtl (tree, int);
 long
 get_alias_set (t,z)
      tree t;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-3.c
index ec04e17..099ba8b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030711-3.c
@@ -31,6 +31,7 @@  union tree_node
 {
   struct tree_decl decl;
 };
+int make_decl_rtl (tree, void *);
 long
 get_alias_set (t)
      tree t;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030728-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030728-1.c
index 93a7979..a11ddea 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030728-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030728-1.c
@@ -16,17 +16,13 @@  struct tree_common
   enum tree_code code:8;
 };
 
-
-
-
-
 union tree_node
 {
   struct tree_common common;
 };
 
-
-
+int foo (int);
+int get_alias_set (tree);
 
 int
 objects_must_conflict_p (t1, t2)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c
index 59b4839..d84dc25 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c
@@ -29,17 +29,18 @@  union tree_node
   struct tree_common common;
 };
 
+int
 readonly_fields_p (type)
      tree type;
 {
 
   if (type->common.code != RECORD_TYPE)
-    return;
+    return 0;
 
   if (tree_code_type[type->common.code] != 't')
     abort ();
 
-  return;
+  return 0;
 }
 
 /* A good optimizer would realize that the cast to (unsigned int) is
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c
index f90acd0..39e2325 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c
@@ -28,6 +28,10 @@  union tree_node
   struct tree_common common;
   struct tree_decl decl;
 };
+int queued_subexp_p (rtx);
+void blah (int);
+int make_decl_rtl (tree, int);
+int expr_size (tree);
 rtx
 store_expr (exp, target, want_value)
      tree exp;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-2.c
index 8300320..84353a5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030731-2.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-dce1" } */
 
+void foo (void);
+
 void
 bar (int i, int partial, int args_addr)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-1.c
index 84344e3..ead99e1 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-1.c
@@ -22,6 +22,7 @@  struct rtx_def
 
 static int *uid_cuid;
 static int max_uid_cuid;
+int insn_cuid (rtx);
 
 rtx
 bar (rtx r)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c
index 0711053..e607098 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c
@@ -8,6 +8,7 @@  struct rtx_def
 {
   int code;
 };
+void
 foo (reg)
      rtx reg;
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c
index a12d718..98da250 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c
@@ -2,7 +2,10 @@ 
 /* { dg-options "-O1 -ftree-vrp -fdump-tree-dom2" } */
      
 extern void abort (void);
+extern void bitmap_clear (int *);
+extern void bar (int *);
 
+void
 oof ()
 {
   int live_head;
@@ -12,6 +15,7 @@  oof ()
    bitmap_clear (live);
 }
 
+void
 foo(int n)
 {
   int *space = (int *)__builtin_alloca (n);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-3.c
index 9a3c231..2c1b333 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-3.c
@@ -2,6 +2,8 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
                                                                                 
 typedef unsigned int cppchar_t;
+void foo (void);
+cppchar_t oof (void);
 cppchar_t
 cpp_parse_escape (pstr, limit, wide)
      const unsigned char **pstr;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c
index f9f5fb7..044e1c2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c
@@ -18,6 +18,7 @@  union tree_node
   struct tree_common common;
   struct tree_list list;
 };
+void c_simplify_stmt (tree *);
 void
 simplify_condition (cond_p)
      tree *cond_p;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-8.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-8.c
index 77fd3e5..73aaddd 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-8.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-8.c
@@ -1,5 +1,5 @@ 
 /* { dg-do compile } */
-/* { dg-options "-O1 -fdump-tree-dom2" } */
+/* { dg-options "-O1 -fdump-tree-dom2 -fgnu89-inline" } */
                                                                                 
 struct die_struct;
 typedef struct die_struct *dw_die_ref;
@@ -40,6 +40,8 @@  AT_loc_list (a)
     return a->dw_attr_val.v.val_loc_list;
 }
 
+void output_loc_list (dw_loc_list_ref);
+
 void
 output_location_lists (die)
      dw_die_ref die;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-9.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-9.c
index 4f0b7cb..2506989 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-9.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030807-9.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O1 -fdump-tree-dom2" } */
 
+void oof (const char *);
+void foo (void);
+
 static void
 bar ()
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c
index aad53c3..44c8043 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c
@@ -2,7 +2,9 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
    
 extern void abort (void);
+extern void oof (int);
 
+int
 com(int *blah)
 {
   int z = *blah;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c
index 7f60b27..035b4ad 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
     
 extern void abort (void);
+extern void blah (void);
 
 void
 foo (int value)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c
index 2746415..e69b0ee 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-dom2" } */
     
 extern void abort (void);
+extern void blah (void);
 
 void
 foo (int value)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c
index 2c2142c..1b941d6 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c
@@ -18,6 +18,7 @@  union tree_node
   struct tree_common common;
   struct tree_decl decl;
 };
+void record_alias_subset (long);
 long
 blah (decl, set)
      tree decl;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c
index 41aa148..c459210 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c
@@ -18,6 +18,8 @@  union tree_node
   struct tree_common common;
   struct tree_decl decl;
 };
+long oof (void);
+void record_alias_subset (long);
 long
 blah (decl, set)
      tree decl;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-1.c
index 4b659ca..bfd1b50 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-1.c
@@ -4,6 +4,7 @@ 
 /* A test for unreachable blocks removal -- bind_expr whose entry is
    unreachable, but it contains reachable statements.  */   
 
+void bar (void);
 void foo(void)
 {
   if (1)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-2.c
index 9ca9fbb..e857a0d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030820-2.c
@@ -3,6 +3,9 @@ 
 
 /* A test for variables getting out of their scope in copy propagation.  */
 
+void bla (int);
+int bar (void);
+
 void foo(void)
 {
   int k;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030821-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030821-1.c
index 5de503e..8cf74d5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030821-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030821-1.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O1 -fdump-tree-dom1 -fdump-tree-optimized" } */
 
+void dont_remove (void);
+
 void foo(int k)
 {
   int i = 1;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-1.c
index eb1f5ec..d4ec42d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-1.c
@@ -1,7 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-optimized" } */
   
-
+int def_val (int);
+void foo (int);
 extern int board[];
 
 void
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-2.c
index 2c08050..4e3193a 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-2.c
@@ -12,6 +12,8 @@  struct operands_d
 {
   tree *def_op;
 };
+void ggc_set_mark (const void *const);
+void gt_ggc_mx_lang_tree_node (tree);
 
 void
 gt_ggc_mx_operands_d (void *x_p)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c
index e74bd08..6a4d30c 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c
@@ -3,6 +3,7 @@ 
 
 extern int printf (const char *, ...); 
 
+int
 main ()
 {
   int variable = 0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20031022-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20031022-1.c
index 27de6e9..5576924 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20031022-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20031022-1.c
@@ -10,6 +10,8 @@  typedef struct basic_block_def
   edge pred;
 } *basic_block;
 extern struct basic_block_def entry_exit_blocks[2];
+void commit_edge_insertions (void);
+void foo (edge);
 void
 blah (int arf)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c
index 6225bcd..11eec50 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c
@@ -19,6 +19,7 @@  char *bar(char *first, char *last)
      return foo(first, last);
    return 0;
 }
+int
 main() {
    char *p = "a", *q = "b";
    if (p)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040209-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040209-1.c
index 0877153..a685048 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040209-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040209-1.c
@@ -22,6 +22,8 @@  union tree_node
 };
 
 int pedantic;
+void foo (tree);
+void bar1 (tree *);
 
 void
 finish_struct (tree t, tree fieldlist, tree attributes)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040211-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040211-1.c
index 34a5926..1ca2316 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040211-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040211-1.c
@@ -4,6 +4,7 @@ 
 struct rtx_def;
 typedef struct rtx_def *rtx;
 extern const char rtx_class[];
+void foo (void);
 union rtunion_def
 {
   rtx rtx;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040216-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040216-1.c
index c770340..a2edc99 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040216-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040216-1.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O1 -fdump-tree-dse1-details" } */
  
+int
 foo(int *z, int *y, int xx)
 {
   *z = 1;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040302-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040302-1.c
index 8b80128..36b255a 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040302-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040302-1.c
@@ -4,5 +4,6 @@ 
 /* Test for .GLOBAL_VAR not being renamed into SSA after alias analysis.
    provided by Dale Johannesen in PR 14266.  */
 
+void bar (void);
 void foo() { bar (); }
-main () { foo (); }
+int main () { foo (); }
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c
index d6e5449..839cc3a 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c
@@ -18,6 +18,7 @@  void foo (struct bar *b)
     abort ();
 }
 
+int
 main ()
 {
   struct bar x;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c
index 4be6049..792d7ae 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c
@@ -6,7 +6,10 @@ 
    Faset().  */
 extern void abort (void);
 extern void exit (int);
+extern int Faref (int, int);
+extern int Faset (int, int, int);
 
+int
 main ()
 {
   int table, c, elt;
@@ -18,13 +21,13 @@  main ()
 
 int j = 0;
 
-int __attribute__ ((noinline)) Faref (table, elt)
+int __attribute__ ((noinline)) Faref (int table, int elt)
 {
   j = 1;
   return 0;
 }
 
-int __attribute__ ((noinline)) Faset (table, elt, c)
+int __attribute__ ((noinline)) Faset (int table, int elt, int c)
 {
   if (j != 1)
     abort ();
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c
index b1bed75..cfb7c60 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c
@@ -39,6 +39,7 @@  baz (void)
 
 fnptr B[2] = { baz, boz };
 
+int
 main ()
 {
   int b, c;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20040729-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20040729-1.c
index ef94096..1475849 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20040729-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20040729-1.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O1 -fdump-tree-dce2" } */
 
+int
 foo ()
 {
   volatile int *p;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20041008-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20041008-1.c
index ca24427..87e3636 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20041008-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20041008-1.c
@@ -1,17 +1,21 @@ 
 /* { dg-do run } */ 
 /* { dg-options "-O2" } */
 
+void link_error (void);
+
 struct A {
     int x;
     int y;
 };
 
+void
 baz (struct A *a)
 {
   a->x = 3;
   a->y = 2;
 }
 
+int
 foo (int i)
 {
   struct A a;
@@ -31,6 +35,7 @@  foo (int i)
   return a.x;
 }
 
+int
 main ()
 {
   foo (30);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20050719-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20050719-1.c
index 8dc4c7e..2c1e335 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20050719-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20050719-1.c
@@ -5,6 +5,7 @@  extern void abort (void) __attribute__ ((__nothrow__)) __attribute__
 ((__noreturn__));
 extern void exit (int __status) __attribute__ ((__nothrow__))
 __attribute__ ((__noreturn__));
+int useboot (void *);
 
 struct bootLoader {
   int x;
@@ -31,6 +32,7 @@  useboot (void *boot)
   abort ();
 }
 
+int
 main()
 {
   zap (0);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/20070302-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/20070302-1.c
index 4b148f2..884f5f6 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/20070302-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/20070302-1.c
@@ -1,6 +1,8 @@ 
 /* { dg-do link } */
 /* { dg-options "-O2" } */
 
+void link_error (void);
+
 struct A
 {
   int x;
@@ -39,6 +41,7 @@  float foo (int i)
     link_error ();
 }
 
+int
 main(int argc, char **argv)
 {
   foo (argc);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-13.c gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-13.c
index ae7cc82..69e00eb 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-13.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-13.c
@@ -1,6 +1,7 @@ 
 /* { dg-do link } */
 /* { dg-options "-O2" } */
 
+void link_failure (void);
 
 struct a
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-28.c gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-28.c
index 8413230..c15ca05 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-28.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/alias-28.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O3" } */
 
 extern void abort (void);
+extern void __link_error (void);
 extern void *malloc(__SIZE_TYPE__);
 
 int * __attribute__((noinline,noclone))
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/asm-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/asm-3.c
index 29b27f4..a32dbc0 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/asm-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/asm-3.c
@@ -12,6 +12,9 @@ 
 #endif
 #endif
 
+void foo (int);
+void bar (int);
+
 static inline int source(void)
 {
   register int hardreg __asm__(REGISTER);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias-2.c
index 89477d9..b7c4831 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias-2.c
@@ -3,6 +3,7 @@ 
 /* { dg-options "-O2 -fdump-tree-optimized" } */
 static int a=4;
 static int b __attribute__ ((alias("a")));
+int
 main()
 {
    return b+a;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias.c gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias.c
index fe4084d..412df2d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/attr-alias.c
@@ -10,6 +10,8 @@  int test()
 static int test2() __attribute__ ((alias("test")));
 static int test1() __attribute__ ((weakref)) __attribute__ ((alias("test2")));
 static int test4() __attribute__ ((weakref)) __attribute__ ((alias("test")));
+int test3();
+int
 main()
 {
   test();
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c
index 4c3888f..f439c83 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-1.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-gimple" } */
 
+void g (void);
+
+void
 f (int i, float j, int i2, float j2) 
 { 
   if (__builtin_expect ((i * i2) > 0 && (j * j2), 0)) 
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c
index d8f344f..1e22cbb 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-2.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-gimple" } */
 
+void g (void);
+
+void
 f (int i, float j, int i2, float j2) 
 { 
   if (__builtin_expect ((i * i2) > 0 || (j * j2), 0))
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c
index b9e6cfb..9ad95d1 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-3.c
@@ -1,6 +1,10 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-gimple" } */
 
+void a (void);
+void b (void);
+
+void
 f (int i, float j, int i2, float j2) 
 { 
   if (__builtin_expect ((i * i2) > 0 && (j * j2), 0))
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c
index 2d2b206..af5f8d1 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-4.c
@@ -1,6 +1,10 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-gimple" } */
 
+void a (void);
+void b (void);
+
+void
 f (int i, float j, int i2, float j2) 
 { 
   if (__builtin_expect ((i * i2) > 0 || (j * j2), 0))
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c
index d0b251d..c28a362 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/builtin-expect-5.c
@@ -1,6 +1,10 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-forwprop" } */
 
+void a (void);
+void b (void);
+
+void
 f (int i, float j, int i2, float j2) 
 { 
   if (__builtin_expect ((i * i2) > 0 && __builtin_expect ((j * j2) != 0, 1), 0))
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/coalesce-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/coalesce-1.c
index 5cae9ae..2eedbce 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/coalesce-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/coalesce-1.c
@@ -103,6 +103,7 @@  union gimple_statement_d
   struct gimple_statement_phi gimple_phi;
 };
 extern size_t const gimple_ops_offset_[];
+int gimple_statement_structure (gimple);
 static __inline__ tree *
 gimple_ops (gimple gs)
 {
@@ -155,6 +156,8 @@  struct switch_conv_info
   tree *default_values;
 };
 static struct switch_conv_info info;
+void gsi_next (gimple_stmt_iterator *);
+int gsi_gsi_start_phis (basic_block);
 
 static void
 gather_default_values (tree default_case)
@@ -178,6 +181,8 @@  gather_default_values (tree default_case)
     }
 }
 
+unsigned int gimple_switch_num_labels (gimple);
+
 unsigned char
 process_switch (gimple swtch)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-1.c
index 0bea9a9..99d21cd 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-1.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O3 -fdump-tree-cunrolli-details" } */
 int a[2];
+void
 test(int c)
 { 
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-2.c
index e16d008..09605b2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-2.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O3 -fdump-tree-cunroll-details" } */
 int a[2];
+int test2 (void);
+void
 test(int c)
 { 
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-3.c
index dd6ce50..69c358c 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-3.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-cunrolli-details" } */
 int a[1];
+void
 test(int c)
 { 
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-4.c
index 86e12bb..76cd5a4 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-4.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O3 -fdump-tree-ivcanon-details" } */
 int a[1];
+void test2 (void);
+void
 test(int c)
 { 
   int i=0,j;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-5.c
index 2739c29..8b88c0f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-5.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O3 -fdump-tree-cunroll-details -fno-tree-vectorize" } */
 int *a;
+void
 test(int c)
 { 
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-9.c gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-9.c
index f3b59f9..f6d5c60 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-9.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/cunroll-9.c
@@ -1,8 +1,10 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-cunrolli-details" } */
 void abort (void);
+int q (void);
 int a[10];
 int b[11];
+int
 t (int n)
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-2.c
index 0eff197..6839b7b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-2.c
@@ -25,6 +25,8 @@  enum tree_index
     TI_CURRENT_TARGET_PRAGMA, TI_CURRENT_OPTIMIZE_PRAGMA, TI_MAX
 };
 extern tree global_trees[TI_MAX];
+void fancy_abort (const char *file, int line, const char *function);
+void
 emit_support_tinfos (void)
 {
   static tree *const fundamentals[] = {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-3.c
index 9f10886..4d98bb2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-3.c
@@ -31,7 +31,9 @@  union tree_node
 };
 const enum tree_code_class tree_code_type[] =
 { tcc_exceptional, 1, 0, 0, 0, 0, 2, };
+extern void tree_class_check_failed (const_tree, const char *);
 
+void
 int_fits_type_p (const_tree c, const_tree type)
 {
   double_int dc, dd;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-4.c
index b416d37..445d415 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-4.c
@@ -5,6 +5,7 @@  struct a {int a,b;};
 const static struct a a;
 static int b[10];
 int c;
+int
 test()
 {
   return a.a+b[c];
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-5.c
index 1dad931..68b29a3 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/foldconst-5.c
@@ -5,6 +5,7 @@ 
 static const char a[5]="t";
 static const int b[5]={1,2};
 static const struct a {int a : 6; int b : 6;} c = {5,9};
+int
 test()
 {
   return a[2]+b[1]+b[3]+c.b;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/foldstring-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/foldstring-1.c
index e738a44..b49bb3f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/foldstring-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/foldstring-1.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O1 -fdump-tree-gimple" } */
 
+void blah (void);
+
 void
 arf ()
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-25.c gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-25.c
index cf0c504..16743b0 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-25.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-25.c
@@ -22,6 +22,7 @@  struct rtx_def
 {
   __extension__ enum machine_mode mode:8;
 };
+void fancy_abort (const char *, int, const char *);
 void
 convert_move (rtx to, rtx from, int unsignedp)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-26.c gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-26.c
index 108b1bc..676f7b5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-26.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-26.c
@@ -48,6 +48,8 @@  varpool_externally_visible_p (struct varpool_node *vnode,
   return 0;
 }
 
+unsigned char pointer_set_contains (struct pointer_set_t *, struct varpool_node *);
+
 unsigned int
 function_and_variable_visibility (unsigned char whole_program)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-28.c gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-28.c
index ae1a00b..a9e0b5f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-28.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/forwprop-28.c
@@ -5,7 +5,9 @@ 
 
 extern char *frob (void);
 extern _Bool testit (void);
+extern void oof (void);
 
+void
 test (int code)
 {
   char *temp = frob ();
@@ -14,6 +16,7 @@  test (int code)
     oof ();
 }
 
+void
 test_2 (int code)
 {
   char *temp = frob ();
@@ -22,7 +25,7 @@  test_2 (int code)
     oof ();
 }
 
-
+void
 test_3 (int code)
 {
   char *temp = frob ();
@@ -31,7 +34,7 @@  test_3 (int code)
     oof ();
 }
 
-
+void
 test_4 (int code)
 {
   char *temp = frob ();
@@ -40,7 +43,7 @@  test_4 (int code)
     oof ();
 }
 
-
+void
 test_5 (int code)
 {
   _Bool temp = testit ();
@@ -49,6 +52,7 @@  test_5 (int code)
     oof ();
 }
 
+void
 test_6 (int code)
 {
   _Bool temp = testit ();
@@ -57,7 +61,7 @@  test_6 (int code)
     oof ();
 }
 
-
+void
 test_7 (int code)
 {
   _Bool temp = testit ();
@@ -66,7 +70,7 @@  test_7 (int code)
     oof ();
 }
 
-
+void
 test_8 (int code)
 {
   _Bool temp = testit ();
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-4.c
index beb1a0e..6e06892 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-4.c
@@ -26,6 +26,7 @@  struct cpp_reader
 {
   struct ht *hash_table;
 };
+void
 create_iso_definition (cpp_reader *pfile, cpp_macro *macro)
 {
   unsigned int num_extra_tokens = 0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-6.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-6.c
index a9c5db3..b3f4a07 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-6.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ifc-6.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-c -O2 -ftree-vectorize" { target *-*-* } } */
 
 static int x;
+void
 foo (int n, int *A)
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-10.c gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-10.c
index 1d7aeef..fe6c77f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-10.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-10.c
@@ -22,6 +22,7 @@  int do_something (int size)
     do_something_big (size);
 }
 extern int n;
+int
 main()
 {
   do_something (2);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-5.c
index 1a6faf4..6050bea 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-5.c
@@ -2,6 +2,9 @@ 
 /* { dg-options "-Os -fdump-tree-optimized" } */
 struct a {int a,b,c,d,e,f;};
 
+void do_something (struct a *);
+
+void
 do_inc (struct a *a)
 {
   a->a=a->b;
@@ -10,6 +13,7 @@  do_inc (struct a *a)
   a->e=a->f;
 }
 
+void
 test(struct a *a)
 {
   do_inc (a);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-6.c gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-6.c
index ae6c41f..c79518c 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-6.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-6.c
@@ -1,7 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-Os -fdump-tree-optimized" } */
 struct a {int a,b,c,d,e,f,g,h,i,j;};
+void do_something (struct a *);
 
+void
 do_inc (struct a *a)
 {
   a->a=1;
@@ -15,6 +17,7 @@  do_inc (struct a *a)
   a->j=5;
 }
 
+void
 test(struct a *a)
 {
   do_inc (a);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-7.c gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-7.c
index 16c3c86..077cdd2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-7.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-7.c
@@ -1,5 +1,5 @@ 
 /* { dg-do compile } */
-/* { dg-options "-O -fdump-tree-einline" } */
+/* { dg-options "-O -fdump-tree-einline -fgnu89-inline" } */
 
 void foo0();
 inline void bar0() { foo0(); }
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-9.c gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-9.c
index 678dd85..45f0fec 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-9.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/inline-9.c
@@ -14,6 +14,7 @@  int t(int a)
       q(a+10);
 }
 
+int
 main()
 {
    t(5);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-cp-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-cp-1.c
index ec628b7..9fbacde 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-cp-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-cp-1.c
@@ -11,6 +11,7 @@  very_long_function(int a)
     return 2 * -a + very_long_function (a)/4;
 }
 
+int
 blah ()
 {
   very_long_function (1);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-1.c
index a31e8ea..4bf4231 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-1.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O3 -fdump-tree-fnsplit" } */
-int test2(a)
+
+void do_something_big (void);
+
+int test2(int a)
 {
    if (a<100)
      return 1;
@@ -20,6 +23,7 @@  int test2(a)
    return 0;
 }
 
+void
 test()
 {
   test2(10);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-2.c
index bbde73d..b2d50a4 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-2.c
@@ -3,6 +3,8 @@ 
 int b;
 int c;
 int d;
+void long_function (int);
+void
 split_me(int a)
 {
   int t = 0;
@@ -29,6 +31,7 @@  split_me(int a)
     goto make_me_irregular;
 }
 
+int
 main()
 {
   split_me (1);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c
index 8fc1244..4fb1a92 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c
@@ -24,6 +24,7 @@  struct a split_me (int a)
     }
 }
 int val;
+void
 test()
 {
   split_me (val);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-3.c
index 1a10e334..8dd2f2b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-3.c
@@ -43,6 +43,8 @@  VEC_rtx_gc_safe_grow_cleared (VEC_rtx_gc ** vec_, int size_,
 }
 
 static VEC_rtx_gc *reg_base_value;
+unsigned int max_reg_num (void);
+int arf (void);
 void
 init_alias_analysis (void)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-5.c
index e6ae37a..131d319 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/isolate-5.c
@@ -17,6 +17,9 @@  struct d_info
   int num_comps;
 };
 
+void foo (int);
+void bar (int);
+
 static struct demangle_component *
 d_make_empty (struct d_info *di)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-2.c
index 369f082..24c0bcd 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-2.c
@@ -4,7 +4,9 @@ 
 long last_data_offset;
 int store;
 char *data;
+void g (long);
   
+void
 f ()
 {
   
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-3.c
index 202ad1f..94e3c52 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ivopts-3.c
@@ -1,7 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-ivopts-details" } */
 
-void main (void)
+void f2 (void);
+
+int main (void)
 {
   int i;
   for (i = 0; i < 10; i++)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre7.c gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre7.c
index 6f68f3a..7e67c9d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre7.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre7.c
@@ -2,6 +2,9 @@ 
 /* { dg-options "-O2 -fdump-tree-pre-stats" } */
 /* We can't eliminate the *p load here in any sane way, as eshup8 may 
    change it.  */
+
+void eshup8 (unsigned short *);
+
 void
 enormlz (x)
      unsigned short x[];
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c
index 056c3fd..8678151 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/loadpre8.c
@@ -56,7 +56,7 @@  ei_start_1 (VEC_edge_gc ** ev)
   i.container = ev;
   return i;
 }
-__attribute__ ((noinline)) static ei_next (edge_iterator * i)
+__attribute__ ((noinline)) void static ei_next (edge_iterator * i)
 {
 }
 static __inline__ edge
@@ -80,7 +80,10 @@  phi_nodes (basic_block bb)
 {
 }
 
+void get_reaching_def (tree);
+
 /* We can eliminate a load of the SRA'd variable edge_iterator.container */
+void
 rewrite_add_phi_arguments (basic_block bb)
 {
   edge e;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/local-pure-const.c gcc/gcc/testsuite/gcc.dg/tree-ssa/local-pure-const.c
index afb7ca4..356ad7b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/local-pure-const.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/local-pure-const.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-local-pure-const1" } */
 /* { dg-add-options bind_pic_locally } */
 
+int
 t(int a, int b, int c)
 {
   int *p;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-20.c gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-20.c
index 24524a0..da1b6c7 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-20.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-20.c
@@ -6,6 +6,10 @@ 
 typedef struct gfc_se { int pre; } gfc_se;
 typedef struct gfc_ss_info { int dim[7]; } gfc_ss_info;
 int gfc_rank_cst[7 + 1];
+int a (int, int, int);
+int b (int, int);
+int c (int, int);
+void
 gfc_conv_array_transpose (gfc_se * se) {
   int dest, src, dest_index, src_index;
   gfc_ss_info *dest_info;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-38.c gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-38.c
index 714696e..3c515aa 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-38.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/loop-38.c
@@ -2,6 +2,8 @@ 
 /* { dg-options "-O2 -fdump-tree-cunrolli-details" } */
 int a[10];
 int b[11];
+int q (void);
+int
 t(int n)
 {
    int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c
index 52e4a9a..e94ad5f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2" } */
 extern int a; /* { dg-error "declared weak after being used" } */
+int
 t()
 {
   return &a!=0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr20913.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr20913.c
index fb5461a..3c0eceb 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr20913.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr20913.c
@@ -5,6 +5,8 @@ 
 /* { dg-do link } */
 /* { dg-options "-O2 -fno-tree-dominator-opts" } */
 
+void link_error (void);
+
 int
 foo (int a, int b, int c, int d)
 {
@@ -28,6 +30,7 @@  foo (int a, int b, int c, int d)
     }
 }
 
+int
 main()
 {
   foo (1, 2, 3, 4);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr21582.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr21582.c
index 0f5dc9e..8675fbf 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr21582.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr21582.c
@@ -1,6 +1,8 @@ 
 /* { dg-do link }  */
 /* { dg-options "-O2 -fdump-tree-vrp1" }  */
 
+void link_error (void);
+
 static inline void do_thing(char *s, int *p, char *q)
 {
   	/* This should be folded away.  */
@@ -19,6 +21,7 @@  void __attribute__((nonnull (1, 3))) do_other_thing(char *s, int *p, char *q)
 
 int i;
 
+int
 main()
 {
   do_other_thing ("xxx", &i, "yyy");
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr22117.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr22117.c
index d265d5e..377539f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr22117.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr22117.c
@@ -5,6 +5,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+void link_error (void);
+
 void
 foo (int *p, int q)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23434.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23434.c
index a21b955..d278859 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23434.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23434.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2" } */
 
+void
 cblas_csyr2k (int N, void *A, int lda, float *B, int ldb, float *C, int k)
 {
   int i, j;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23744.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23744.c
index 5381396..23fc3a2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23744.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr23744.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fno-tree-ccp -fdump-tree-vrp1" } */
 
+void h (void);
+
 int g (int i, int j)
 {
   int t = 0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24117.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24117.c
index ffa5dd0..df19d97 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24117.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24117.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-optimized" } */
 
+void link_error (void);
+
 typedef struct  {
   int x;
   int z;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24670.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24670.c
index a5ff800..e4276ac 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24670.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24670.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2" } */
 
+void add128 (long long int *);
+
 __inline__ void
 shift128Right (int count, long long int *z1Ptr)
 {
@@ -12,6 +14,7 @@  shift128Right (int count, long long int *z1Ptr)
   *z1Ptr = z1;
 }
 
+void
 float128_rem ()
 {
   signed int expDiff;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24840.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24840.c
index 736dafd..0ce9ed3 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24840.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr24840.c
@@ -7,6 +7,7 @@  typedef struct
 } Object;
 
 void Err_Handler () __attribute__ ((__noreturn__));
+void Wrong_Type (Object, int);
 
 int
 P_Error (int argc, Object * argv)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr25734.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr25734.c
index a71c7f0..9d569d1 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr25734.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr25734.c
@@ -4,6 +4,7 @@ 
 struct list_head {
  struct list_head *next;
 };
+void __list_del (struct list_head *);
 static inline __attribute__((always_inline)) void list_del_init(struct
 list_head *entry)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33723.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33723.c
index 32a3aad..7b5aefc 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33723.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33723.c
@@ -14,6 +14,8 @@  typedef union
   long int a;
 } T;
 
+void test (T *);
+
 void
 foo1 (void)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
index e6a9e71..858a95d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33920.c
@@ -18,6 +18,7 @@  union lispunion
 {
   struct vector v;
 };
+void number_plus (object, object);
 void init_code ()
 {
   object V659;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33922.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33922.c
index 7429eb1..5e59a3f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33922.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr33922.c
@@ -14,6 +14,7 @@  typedef struct
 }
 ProtocolOperations;
 static const ProtocolOperations *protocol;
+int
 brl_readCommand (BrailleDisplay * brl)
 {
   unsigned long int keys;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146-2.c
index 31007b0..2378e3e 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146-2.c
@@ -24,6 +24,8 @@  typedef union
   long int a;
 } T;
 
+void test (T *);
+
 void
 foo (void)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146.c
index 99fdeb5..73894a0 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr34146.c
@@ -24,6 +24,8 @@  typedef union
   long int a;
 } T;
 
+void test (T *);
+
 void
 foo (void)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr38385.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr38385.c
index a49c93e..c3e5ac6 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr38385.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr38385.c
@@ -22,6 +22,7 @@  int replace_reloads;
 int hard_regs_live_known;
 short* static_reload_reg_p;
 struct rd recog_data;
+int ix86_preferred_reload_class (rtx, int);
 
 int
 find_reloads (rtx insn, int replace, int ind_levels, int live_known,
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-1.c
index 65a0b12..487c42b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-1.c
@@ -31,6 +31,8 @@  struct ehca_shca {
         u32 hca_cap_mr_pgsize;
 };
 
+int ____ilog2_NaN (void);
+
 static u64 ehca_get_max_hwpage_size(struct ehca_shca *shca)
 {
  return 1UL << ( __builtin_constant_p(shca->hca_cap_mr_pgsize) ? ( (shca->hca_cap_mr_pgsize) < 1 ? ____ilog2_NaN() : (shca->hca_cap_mr_pgsize) & (1ULL << 63) ? 63 : (shca->hca_cap_mr_pgsize) & (1ULL << 62) ? 62 : (shca->hca_cap_mr_pgsize) & (1ULL << 61) ? 61 : (shca->hca_cap_mr_pgsize) & (1ULL << 60) ? 60 : (shca->hca_cap_mr_pgsize) & (1ULL << 59) ? 59 : (shca->hca_cap_mr_pgsize) & (1ULL << 58) ? 58 : (shca->hca_cap_mr_pgsize) & (1ULL << 57) ? 57 : (shca->hca_cap_mr_pgsize) & (1ULL << 56) ? 56 : (shca->hca_cap_mr_pgsize) & (1ULL << 55) ? 55 : (shca->hca_cap_mr_pgsize) & (1ULL << 54) ? 54 : (shca->hca_cap_mr_pgsize) & (1ULL << 53) ? 53 : (shca->hca_cap_mr_pgsize) & (1ULL << 52) ? 52 : (shca->hca_cap_mr_pgsize) & (1ULL << 51) ? 51 : (shca->hca_cap_mr_pgsize) & (1ULL << 50) ? 50 : (shca->hca_cap_mr_pgsize) & (1ULL << 49) ? 49 : (shca->hca_cap_mr_pgsize) & (1ULL << 48) ? 48 : (shca->hca_cap_mr_pgsize) & (1ULL << 47) ? 47 : (shca->hca_cap_mr_pgsize) & (1ULL << 46) ? 46 : (shca->hca_cap_mr_pgsize) & (1ULL << 45) ? 45 : (shca->hca_cap_mr_pgsize) & (1ULL << 44) ? 44 : (shca->hca_cap_mr_pgsize) & (1ULL << 43) ? 43 : (shca->hca_cap_mr_pgsize) & (1ULL << 42) ? 42 : (shca->hca_cap_mr_pgsize) & (1ULL << 41) ? 41 : (shca->hca_cap_mr_pgsize) & (1ULL << 40) ? 40 : (shca->hca_cap_mr_pgsize) & (1ULL << 39) ? 39 : (shca->hca_cap_mr_pgsize) & (1ULL << 38) ? 38 : (shca->hca_cap_mr_pgsize) & (1ULL << 37) ? 37 : (shca->hca_cap_mr_pgsize) & (1ULL << 36) ? 36 : (shca->hca_cap_mr_pgsize) & (1ULL << 35) ? 35 : (shca->hca_cap_mr_pgsize) & (1ULL << 34) ? 34 : (shca->hca_cap_mr_pgsize) & (1ULL << 33) ? 33 : (shca->hca_cap_mr_pgsize) & (1ULL << 32) ? 32 : (shca->hca_cap_mr_pgsize) & (1ULL << 31) ? 31 : (shca->hca_cap_mr_pgsize) & (1ULL << 30) ? 30 : (shca->hca_cap_mr_pgsize) & (1ULL << 29) ? 29 : (shca->hca_cap_mr_pgsize) & (1ULL << 28) ? 28 : (shca->hca_cap_mr_pgsize) & (1ULL << 27) ? 27 : (shca->hca_cap_mr_pgsize) & (1ULL << 26) ? 26 : (shca->hca_cap_mr_pgsize) & (1ULL << 25) ? 25 : (shca->hca_cap_mr_pgsize) & (1ULL << 24) ? 24 : (shca->hca_cap_mr_pgsize) & (1ULL << 23) ? 23 : (shca->hca_cap_mr_pgsize) & (1ULL << 22) ? 22 : (shca->hca_cap_mr_pgsize) & (1ULL << 21) ? 21 : (shca->hca_cap_mr_pgsize) & (1ULL << 20) ? 20 : (shca->hca_cap_mr_pgsize) & (1ULL << 19) ? 19 : (shca->hca_cap_mr_pgsize) & (1ULL << 18) ? 18 : (shca->hca_cap_mr_pgsize) & (1ULL << 17) ? 17 : (shca->hca_cap_mr_pgsize) & (1ULL << 16) ? 16 : (shca->hca_cap_mr_pgsize) & (1ULL << 15) ? 15 : (shca->hca_cap_mr_pgsize) & (1ULL << 14) ? 14 : (shca->hca_cap_mr_pgsize) & (1ULL << 13) ? 13 : (shca->hca_cap_mr_pgsize) & (1ULL << 12) ? 12 : (shca->hca_cap_mr_pgsize) & (1ULL << 11) ? 11 : (shca->hca_cap_mr_pgsize) & (1ULL << 10) ? 10 : (shca->hca_cap_mr_pgsize) & (1ULL << 9) ? 9 : (shca->hca_cap_mr_pgsize) & (1ULL << 8) ? 8 : (shca->hca_cap_mr_pgsize) & (1ULL << 7) ? 7 : (shca->hca_cap_mr_pgsize) & (1ULL << 6) ? 6 : (shca->hca_cap_mr_pgsize) & (1ULL << 5) ? 5 : (shca->hca_cap_mr_pgsize) & (1ULL << 4) ? 4 : (shca->hca_cap_mr_pgsize) & (1ULL << 3) ? 3 : (shca->hca_cap_mr_pgsize) & (1ULL << 2) ? 2 : (shca->hca_cap_mr_pgsize) & (1ULL << 1) ? 1 : (shca->hca_cap_mr_pgsize) & (1ULL << 0) ? 0 : ____ilog2_NaN() ) : (sizeof(shca->hca_cap_mr_pgsize) <= 4) ? __ilog2_u32(shca->hca_cap_mr_pgsize) : __ilog2_u64(shca->hca_cap_mr_pgsize) );
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-2.c
index c96a87a..8c8d5e9 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr49642-2.c
@@ -33,6 +33,8 @@  struct ehca_shca {
         u32 hca_cap_mr_pgsize;
 };
 
+int ____ilog2_NaN (void);
+
 static u64 ehca_get_max_hwpage_size(struct ehca_shca *shca)
 {
  return 1UL << ( __builtin_constant_p(shca->hca_cap_mr_pgsize) ? ( (shca->hca_cap_mr_pgsize) < 1 ? ____ilog2_NaN() : (shca->hca_cap_mr_pgsize) & (1ULL << 63) ? 63 : (shca->hca_cap_mr_pgsize) & (1ULL << 62) ? 62 : (shca->hca_cap_mr_pgsize) & (1ULL << 61) ? 61 : (shca->hca_cap_mr_pgsize) & (1ULL << 60) ? 60 : (shca->hca_cap_mr_pgsize) & (1ULL << 59) ? 59 : (shca->hca_cap_mr_pgsize) & (1ULL << 58) ? 58 : (shca->hca_cap_mr_pgsize) & (1ULL << 57) ? 57 : (shca->hca_cap_mr_pgsize) & (1ULL << 56) ? 56 : (shca->hca_cap_mr_pgsize) & (1ULL << 55) ? 55 : (shca->hca_cap_mr_pgsize) & (1ULL << 54) ? 54 : (shca->hca_cap_mr_pgsize) & (1ULL << 53) ? 53 : (shca->hca_cap_mr_pgsize) & (1ULL << 52) ? 52 : (shca->hca_cap_mr_pgsize) & (1ULL << 51) ? 51 : (shca->hca_cap_mr_pgsize) & (1ULL << 50) ? 50 : (shca->hca_cap_mr_pgsize) & (1ULL << 49) ? 49 : (shca->hca_cap_mr_pgsize) & (1ULL << 48) ? 48 : (shca->hca_cap_mr_pgsize) & (1ULL << 47) ? 47 : (shca->hca_cap_mr_pgsize) & (1ULL << 46) ? 46 : (shca->hca_cap_mr_pgsize) & (1ULL << 45) ? 45 : (shca->hca_cap_mr_pgsize) & (1ULL << 44) ? 44 : (shca->hca_cap_mr_pgsize) & (1ULL << 43) ? 43 : (shca->hca_cap_mr_pgsize) & (1ULL << 42) ? 42 : (shca->hca_cap_mr_pgsize) & (1ULL << 41) ? 41 : (shca->hca_cap_mr_pgsize) & (1ULL << 40) ? 40 : (shca->hca_cap_mr_pgsize) & (1ULL << 39) ? 39 : (shca->hca_cap_mr_pgsize) & (1ULL << 38) ? 38 : (shca->hca_cap_mr_pgsize) & (1ULL << 37) ? 37 : (shca->hca_cap_mr_pgsize) & (1ULL << 36) ? 36 : (shca->hca_cap_mr_pgsize) & (1ULL << 35) ? 35 : (shca->hca_cap_mr_pgsize) & (1ULL << 34) ? 34 : (shca->hca_cap_mr_pgsize) & (1ULL << 33) ? 33 : (shca->hca_cap_mr_pgsize) & (1ULL << 32) ? 32 : (shca->hca_cap_mr_pgsize) & (1ULL << 31) ? 31 : (shca->hca_cap_mr_pgsize) & (1ULL << 30) ? 30 : (shca->hca_cap_mr_pgsize) & (1ULL << 29) ? 29 : (shca->hca_cap_mr_pgsize) & (1ULL << 28) ? 28 : (shca->hca_cap_mr_pgsize) & (1ULL << 27) ? 27 : (shca->hca_cap_mr_pgsize) & (1ULL << 26) ? 26 : (shca->hca_cap_mr_pgsize) & (1ULL << 25) ? 25 : (shca->hca_cap_mr_pgsize) & (1ULL << 24) ? 24 : (shca->hca_cap_mr_pgsize) & (1ULL << 23) ? 23 : (shca->hca_cap_mr_pgsize) & (1ULL << 22) ? 22 : (shca->hca_cap_mr_pgsize) & (1ULL << 21) ? 21 : (shca->hca_cap_mr_pgsize) & (1ULL << 20) ? 20 : (shca->hca_cap_mr_pgsize) & (1ULL << 19) ? 19 : (shca->hca_cap_mr_pgsize) & (1ULL << 18) ? 18 : (shca->hca_cap_mr_pgsize) & (1ULL << 17) ? 17 : (shca->hca_cap_mr_pgsize) & (1ULL << 16) ? 16 : (shca->hca_cap_mr_pgsize) & (1ULL << 15) ? 15 : (shca->hca_cap_mr_pgsize) & (1ULL << 14) ? 14 : (shca->hca_cap_mr_pgsize) & (1ULL << 13) ? 13 : (shca->hca_cap_mr_pgsize) & (1ULL << 12) ? 12 : (shca->hca_cap_mr_pgsize) & (1ULL << 11) ? 11 : (shca->hca_cap_mr_pgsize) & (1ULL << 10) ? 10 : (shca->hca_cap_mr_pgsize) & (1ULL << 9) ? 9 : (shca->hca_cap_mr_pgsize) & (1ULL << 8) ? 8 : (shca->hca_cap_mr_pgsize) & (1ULL << 7) ? 7 : (shca->hca_cap_mr_pgsize) & (1ULL << 6) ? 6 : (shca->hca_cap_mr_pgsize) & (1ULL << 5) ? 5 : (shca->hca_cap_mr_pgsize) & (1ULL << 4) ? 4 : (shca->hca_cap_mr_pgsize) & (1ULL << 3) ? 3 : (shca->hca_cap_mr_pgsize) & (1ULL << 2) ? 2 : (shca->hca_cap_mr_pgsize) & (1ULL << 1) ? 1 : (shca->hca_cap_mr_pgsize) & (1ULL << 0) ? 0 : ____ilog2_NaN() ) : (sizeof(shca->hca_cap_mr_pgsize) <= 4) ? __ilog2_u32(shca->hca_cap_mr_pgsize) : __ilog2_u64(shca->hca_cap_mr_pgsize) );
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/pr59597.c gcc/gcc/testsuite/gcc.dg/tree-ssa/pr59597.c
index bc9d730..989e5f1 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/pr59597.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/pr59597.c
@@ -4,6 +4,7 @@ 
 typedef unsigned short u16;
 typedef unsigned char u8;
 typedef unsigned int u32;
+long int random(int);
 #define NNN 10
 
 u32 f[NNN], t[NNN];
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/recip-6.c gcc/gcc/testsuite/gcc.dg/tree-ssa/recip-6.c
index b3334fb..a4cf444 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/recip-6.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/recip-6.c
@@ -3,7 +3,7 @@ 
 
 /* Test inserting in a block that does not contain a division.  */
 
-extern int f2();
+extern int g();
 
 double m, n, o;
 
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c
index 5cac1ce..ab79ef7 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-3.c
@@ -4,6 +4,7 @@ 
 int *a_p;
 int a[1000];
 
+void
 f(int k)
 {
 	int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c
index 5f15d62..cdf12ad 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-4.c
@@ -9,6 +9,7 @@  typedef struct {
 int *a_p;
 S a[1000];
 
+void
 f(int k)
 {
 	int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c
index b9de36a..84e406a 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/scev-5.c
@@ -4,6 +4,7 @@ 
 int *a_p;
 int a[1000];
 
+void
 f(int k)
 {
         long long i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-1.c
index e5af247..fbf7ba6 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-1.c
@@ -3,6 +3,8 @@ 
 
 /* Tests for SRA. */
 
+void link_error (void);
+
 typedef struct teststruct
 {
   double d;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-2.c
index 5682b8a..5306a3d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-2.c
@@ -3,6 +3,8 @@ 
 
 /* Test for SRA. */
 
+void link_error (void);
+
 typedef struct teststruct
 {
   double d;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-5.c gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-5.c
index 869d2f5..5ed7a75 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-5.c
@@ -3,6 +3,7 @@ 
 
 /* Tests for SRA of unions. */
 
+void link_error (void);
 
 typedef union testunion
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-6.c gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-6.c
index e59b536..90d9a7d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-6.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/sra-6.c
@@ -11,6 +11,7 @@  typedef struct teststruct
   int i2;
 } teststruct;
 
+void link_error (void);
 
 void cow (int i)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c
index 9eecf94..572ad34 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c
@@ -6,6 +6,8 @@ 
    ssa graph.  */
 
 extern __SIZE_TYPE__ strlen (const char *);
+extern void bar (__SIZE_TYPE__);
+extern int bla (void);
 
 void foo(int i)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-12.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-12.c
index 8ee9eb8..42e3a2e 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-12.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-12.c
@@ -1,6 +1,8 @@ 
 /* { dg-do run } */ 
 /* { dg-options "-O2" } */
 
+void link_error (void);
+
 struct A
 {
   int a;
@@ -25,6 +27,7 @@  void foo (int i)
     link_error ();
 }
 
+int
 main ()
 {
   foo (3);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-2.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-2.c
index 19975a3..81e1fa5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-2.c
@@ -56,6 +56,7 @@  int test7777 (void)
 int test88 (int *arr)
 {
   static int l;
+  extern int foo88(int);
   int v1;
   l = 8;
   arr[0] = 4;
@@ -70,6 +71,7 @@  int test888 (void)
 {
   static int l;
   extern int foo(int *);
+  extern int foo88(int);
   int v1;
   static int sarr[10];
   l = 8;
@@ -143,6 +145,7 @@  int test9999 (void)
 {
   int v1;
   static int sarr[10];
+  extern int foo(int *);
   g9 = 9;
   sarr[0] = 4;
   v1 = g9;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-31.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-31.c
index c155e92..d4bc199 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-31.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-31.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O -fdump-tree-ccp1" } */
 
+void h (void);
+
 int g (int i, int j)
 {
   int t = 0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dce-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dce-1.c
index 12d9826..ad0466f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dce-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dce-1.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O1 -fdump-tree-dce2" } */
 
 int t() __attribute__ ((const));
+void
 q()
 {
   int i = t();
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-4.c
index cafdf13..9cc1695 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-4.c
@@ -9,14 +9,9 @@  typedef struct bitmap_element_def
   struct bitmap_element_def *next;
   unsigned int indx;
 } bitmap_element;
-
-
-
-
-
-
-
-
+unsigned char bitmap_elt_ior (bitmap, bitmap_element *, const bitmap_element *,
+			      const bitmap_element *, bitmap_element *,
+			      unsigned char);
 
 unsigned char
 bitmap_ior_and_compl (bitmap dst, const_bitmap a, const_bitmap b,
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-4.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-4.c
index 39fc85e..74c483a 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-4.c
@@ -1,19 +1,15 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-dse1" } */
 
+void
 foo( int *a)
 {
   *a = 5;
   *a = 3;
 }
 
-
-
-
 /* We should eliminate the first assignment to *p, but not the second.  */
 /* { dg-final { scan-tree-dump-times "= 5" 0 "dse1"} } */
 /* { dg-final { scan-tree-dump-times "= 3" 1 "dse1"} } */
 
 /* { dg-final { cleanup-tree-dump "dse1" } } */
-
-
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-9.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-9.c
index 4cb67f0..e556421 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-9.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-9.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O2 -fdump-tree-dse1-vops" } */
 
 struct { int a, b; } soup1, soup2;
+void
 foo ()
 {
   soup1 = soup2;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-14.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-14.c
index 2371cfa..8c9285b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-14.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-14.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */ 
 /* { dg-options "-O2 -fdump-tree-optimized" } */
 extern __SIZE_TYPE__ strlen (const char *) __attribute__ ((__pure__));
+extern void link_error (void);
 
 void
 foo (const char *str)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-29.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-29.c
index f2d2c41..b70fa58 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-29.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-29.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-pre-details" } */
 
+void bark (void);
 int flag, hoist, y, z;
 
 void
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-vrp-thread-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-vrp-thread-1.c
index 476ee5e..a4fdf89 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-vrp-thread-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/ssa-vrp-thread-1.c
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1-details" } */
 
-
+void oof (void);
 struct basic_block_def;
 typedef struct basic_block_def *basic_block;
 enum gimple_code
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp01.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp01.c
index 3f8e820..1fc7e99 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp01.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp01.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+int
 foo (int *p, int i)
 {
   int x;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp02.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp02.c
index 56fca97..4373d52 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp02.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp02.c
@@ -7,6 +7,7 @@  struct A
   int b;
 };
 
+int
 foo (struct A *p, struct A *q)
 {
   int x = p->a;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp03.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp03.c
index 9b7c082..7ec51e4 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp03.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp03.c
@@ -7,6 +7,7 @@  struct A
   int b;
 };
 
+int
 foo (struct A *p, struct A *q)
 {
   int *r = 0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp04.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp04.c
index bf5d683..b98fda9 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp04.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp04.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+int
 foo (int a, int b)
 {
   if (a == b)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp05.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp05.c
index 7b8b61b..80f05ea 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp05.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp05.c
@@ -11,6 +11,7 @@  inline int zero()
   return 0;
 }
 
+int
 foo (int k, int j)
 {
   if (k >= ten())
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp06.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp06.c
index cb6df0d..6d0f645 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp06.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp06.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+int baz (void);
+
+int
 foo (int i, int j, int a)
 {
   if (i >= 10)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp07.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp07.c
index 6584919..ba813f2 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp07.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp07.c
@@ -1,6 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1-details" } */
 
+int
 foo (int i, int *p)
 {
   int j;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp08.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp08.c
index 193199f..b7111db 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp08.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp08.c
@@ -2,6 +2,7 @@ 
 /* { dg-options "-O2 -fno-tree-fre -fdump-tree-vrp1-details" } */
 
 /* Compile with -fno-tree-fre -O2 to prevent CSEing *p.  */
+int
 foo (int a, int *p)
 {
   int x = *p + 2;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp09.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp09.c
index 9ff0f14..3a00841 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp09.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp09.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+int baz ();
+
+int
 foo (int *p)
 {
   int x = baz ();
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp10.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp10.c
index 5a74584..6d07caf 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp10.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp10.c
@@ -3,6 +3,7 @@ 
 
 extern void abort (void);
 
+int
 foo (int k, int j)
 {
   if (k >= 10)
@@ -18,6 +19,7 @@  foo (int k, int j)
   return j;
 }
 
+int
 main()
 {
   foo (10, 3);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp11.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp11.c
index 591507c..4d0e93d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp11.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp11.c
@@ -7,6 +7,7 @@  bounce (int arg)
   return arg;
 }
 
+int
 foo (int k, int j, int z)
 {
   if (k > z)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp12.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp12.c
index 1714a56..50552ef 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp12.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp12.c
@@ -1,6 +1,9 @@ 
 /* { dg-do link } */
 /* { dg-options -O2 } */
 
+extern void link_error (void);
+
+int
 foo (int i)
 {
   int x;
@@ -17,6 +20,7 @@  foo (int i)
   return x;
 }
 
+int
 main()
 {
   foo (-30);
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp13.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp13.c
index 4b3afdb..33941a3 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp13.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp13.c
@@ -2,7 +2,9 @@ 
 /* { dg-options -O2 }  */
 
 extern void abort (void);
+extern void link_error (void);
 
+int
 foo_div (int i, int j)
 {
   int k;
@@ -111,7 +113,7 @@  foo_div (int i, int j)
   abort ();
 }
 
-
+int
 foo_mult (int i, int j)
 {
   int k;
@@ -209,7 +211,7 @@  foo_mult (int i, int j)
   abort ();
 }
 
-
+int
 main()
 {
   if (foo_div (-10, 5) != -2)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp14.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp14.c
index a65d8a1..89f9316 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp14.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp14.c
@@ -36,6 +36,7 @@  assemble_variable (struct tree_decl decl)
   return decl.u1.a.align;
 }
 
+int
 main ()
 {
   struct tree_decl decl;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp23.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp23.c
index 77899a6..d27b125 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp23.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp23.c
@@ -1,6 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1-details" } */
 
+void aa (void);
+void aos (void);
+void aob (void);
+
+void
 blah (int code1, int code2)
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp24.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp24.c
index 85e5b62..b60ee05 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp24.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp24.c
@@ -18,6 +18,11 @@  struct rtx_def
   } u;
 };
 
+void arf (void);
+void nit (void);
+void frob (void);
+
+void
 sss (rtx insn, int code1, int code2, int code3)
 {
   _Bool D1562;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp25.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp25.c
index fa8bbfd..79813e8 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp25.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp25.c
@@ -2,8 +2,10 @@ 
 /* { dg-options "-O2 -fdump-tree-vrp1-details" } */
 
 extern void abort ();
+extern void arf ();
 int tree_code_length[100];
 
+void
 blah (int code1)
 {
   unsigned char D18670;
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp27.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp27.c
index 09b96f9..2a6dda0 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp27.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp27.c
@@ -14,7 +14,7 @@  int alpha_expand_prologue(long frame_size)
 {
     unsigned long long a;
     int probed;
-    if (frame_size <= 1)  return;
+    if (frame_size <= 1)  return 0;
     unsigned long long b = -2;
     a = -2;
     do {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp46.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp46.c
index a67e839..33ce239 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp46.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp46.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+int func_81 (int);
+int func_98 (int);
+
 void
 func_18 ( int t )
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp55.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp55.c
index 7a3e726..7d1825f 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp55.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp55.c
@@ -1,6 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1-blocks-vops-details" } */
 
+void arf (void);
+
+void
 fu (char *p, int x)
 {
   if (x)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp56.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp56.c
index 912d28e..24ad23e 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp56.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp56.c
@@ -26,6 +26,7 @@  struct basic_block_def
 {
   VEC_edge_gc *succs;
 };
+void foo (void);
 
 unsigned char
 cleanup_empty_eh (basic_block bb)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp67.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp67.c
index f02d837..9269ca5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp67.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp67.c
@@ -1,6 +1,8 @@ 
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-vrp1" } */
 
+extern void link_error (void);
+
 unsigned foo (unsigned i)
 {
   if (i == 2)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp72.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp72.c
index 0b12aad..f4ce82d 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp72.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp72.c
@@ -2,6 +2,7 @@ 
 
 typedef __INTPTR_TYPE__ intptr_t;
 typedef unsigned long long uint64_t;
+extern void linker_error (void);
 
 static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp73.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp73.c
index ea557fd..16b0a81 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp73.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp73.c
@@ -1,7 +1,7 @@ 
 /* { dg-options "-O2" } */
 
 __extension__ typedef __INTPTR_TYPE__ intptr_t;
-
+extern void linker_error (void);
 typedef unsigned long long uint64_t;
 
 static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val)
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp75.c gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp75.c
index 42b3387..7b423bd 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp75.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/vrp75.c
@@ -2,6 +2,7 @@ 
 
 __extension__ typedef __INTPTR_TYPE__ intptr_t;
 typedef unsigned long long uint64_t;
+extern void linker_error (void);
 
 static inline void cvmx_write64_uint64(uint64_t addr, uint64_t val)
 {
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/wholeprogram-1.c gcc/gcc/testsuite/gcc.dg/tree-ssa/wholeprogram-1.c
index 9d0af1f..6c976d5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/wholeprogram-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/wholeprogram-1.c
@@ -11,6 +11,7 @@  large_function ()
       abort ();
 }
 
+int
 main ()
 {
   large_function ();
diff --git gcc/gcc/testsuite/gcc.dg/tree-ssa/writeonly.c gcc/gcc/testsuite/gcc.dg/tree-ssa/writeonly.c
index 156cf3e..7a8b799 100644
--- gcc/gcc/testsuite/gcc.dg/tree-ssa/writeonly.c
+++ gcc/gcc/testsuite/gcc.dg/tree-ssa/writeonly.c
@@ -6,6 +6,7 @@  static struct b {int a,b,c,d,e,f;} magic3;
 
 struct b foo();
 
+void
 t()
 {
  a.magic1 = 1;