summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-03 08:22:26 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-03 08:22:26 +0000
commit135813e566a6918fec966abfff8d18b5ccb31708 (patch)
tree0dbbb69cb1e7a5f5767663d609d297409a79b362
parent7657dcb9ff3f63747b3e659ab6501a9344101346 (diff)
downloadgcc-135813e566a6918fec966abfff8d18b5ccb31708.tar.gz
* gcc.dg/20001023-1.c, gcc.dg/20001108-1.c, gcc.dg/20001117-1.c,
gcc.dg/20010202-1.c, gcc.dg/20011008-2.c, gcc.dg/20011214-1.c, gcc.dg/20020201-1.c, gcc.dg/20020312-2.c, gcc.dg/20020426-2.c, gcc.dg/20030331-2.c, gcc.dg/20030612-1.c, gcc.dg/20030926-1.c, gcc.dg/20031216-1.c, gcc.dg/20031218-3.c, gcc.dg/20040305-2.c, gcc.dg/980226-1.c, gcc.dg/Wreturn-type2.c, gcc.dg/Wunreachable-6.c, gcc.dg/Wunreachable-7.c, gcc.dg/align-1.c, gcc.dg/builtin-prefetch-1.c, gcc.dg/builtins-17.c, gcc.dg/builtins-19.c, gcc.dg/builtins-2.c, gcc.dg/builtins-20.c, gcc.dg/builtins-21.c, gcc.dg/builtins-7.c, gcc.dg/builtins-8.c, gcc.dg/cpp/19930510-1.c, gcc.dg/cpp/charconst-3.c, gcc.dg/cpp/charconst-4.c, gcc.dg/cpp/mi6.c, gcc.dg/cpp/tr-paste.c, gcc.dg/cpp/trad/mi6.c, gcc.dg/cpp/trad/paste.c, gcc.dg/cpp/trad/strify.c, gcc.dg/fastmath-1.c, gcc.dg/fshort-wchar.c, gcc.dg/i386-387-7.c, gcc.dg/i386-387-8.c, gcc.dg/i386-asm-1.c, gcc.dg/i386-cadd.c, gcc.dg/i386-fpcvt-3.c, gcc.dg/i386-loop-3.c, gcc.dg/i386-memset-1.c, gcc.dg/loop-2.c, gcc.dg/nest.c, gcc.dg/noncompile/971104-1.c, gcc.dg/noncompile/990416-1.c, gcc.dg/noncompile/scope.c, gcc.dg/pack-test-4.c, gcc.dg/pack-test-5.c, gcc.dg/pch/inline-4.c, gcc.dg/postincr-1.c, gcc.dg/pr10392-1.c, gcc.dg/pragma-align.c, gcc.dg/profile-generate-1.c, gcc.dg/sibcall-1.c, gcc.dg/sibcall-2.c, gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c, gcc.dg/sibcall-5.c, gcc.dg/sibcall-6.c, gcc.dg/switch-warn-1.c, gcc.dg/switch-warn-2.c, gcc.dg/torture/builtin-attr-1.c, gcc.dg/torture/builtin-math-1.c, gcc.dg/torture/builtin-noret-2.c, gcc.dg/trampoline-1.c, gcc.dg/tree-ssa/20030703-1.c, gcc.dg/tree-ssa/20030703-2.c, gcc.dg/tree-ssa/20030708-1.c, gcc.dg/tree-ssa/20030709-3.c, gcc.dg/tree-ssa/20030710-1.c, gcc.dg/tree-ssa/20030711-1.c, gcc.dg/tree-ssa/20030729-1.c, gcc.dg/tree-ssa/20030730-1.c, gcc.dg/tree-ssa/20030730-2.c, gcc.dg/tree-ssa/20030731-1.c, gcc.dg/tree-ssa/20030807-11.c, gcc.dg/tree-ssa/20030807-2.c, gcc.dg/tree-ssa/20030807-5.c, gcc.dg/tree-ssa/20030807-7.c, gcc.dg/tree-ssa/20030808-1.c, gcc.dg/tree-ssa/20030814-1.c, gcc.dg/tree-ssa/20030814-2.c, gcc.dg/tree-ssa/20030814-3.c, gcc.dg/tree-ssa/20030814-4.c, gcc.dg/tree-ssa/20030814-5.c, gcc.dg/tree-ssa/20030814-6.c, gcc.dg/tree-ssa/20030814-7.c, gcc.dg/tree-ssa/20030815-1.c, gcc.dg/tree-ssa/20030907-1.c, gcc.dg/tree-ssa/20030917-3.c, gcc.dg/tree-ssa/20030922-1.c, gcc.dg/tree-ssa/20031113-1.c, gcc.dg/tree-ssa/20040121-1.c, gcc.dg/tree-ssa/20040319-1.c, gcc.dg/tree-ssa/20040324-1.c, gcc.dg/tree-ssa/20040326-1.c, gcc.dg/tree-ssa/20040326-2.c, gcc.dg/tree-ssa/20040517-1.c, gcc.dg/tree-ssa/ssa-ccp-10.c, gcc.dg/tree-ssa/ssa-pre-1.c, gcc.dg/tree-ssa/tailcall-1.c, gcc.dg/tree-ssa/tailrecursion-5.c, gcc.dg/ultrasp3.c, gcc.dg/winline-7.c, gcc.misc-tests/bprob-1.c, gcc.misc-tests/bprob-2.c, gcc.misc-tests/gcov-3.c, gcc.misc-tests/gcov-4.c, gcc.misc-tests/gcov-4b.c, gcc.misc-tests/gcov-6.c, gcc.misc-tests/gcov-7.c, gcc.misc-tests/i386-pf-3dnow-1.c, gcc.misc-tests/i386-pf-athlon-1.c, gcc.misc-tests/i386-pf-none-1.c, gcc.misc-tests/i386-pf-sse-1.c, objc.dg/nested-func-1.m, objc.dg/special/unclaimed-category-1.m: Declare built-in functions used. * gcc.dg/torture/builtin-attr-1.c (nexttoward): Use FPTEST2ARG2. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85465 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/testsuite/ChangeLog59
-rw-r--r--gcc/testsuite/gcc.dg/20001023-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20001108-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20001117-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20010202-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20011008-2.c3
-rw-r--r--gcc/testsuite/gcc.dg/20011214-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20020201-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20020312-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20020426-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20030331-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/20030612-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20030926-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/20031216-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/20031218-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/20040305-2.c2
-rw-r--r--gcc/testsuite/gcc.dg/980226-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/Wreturn-type2.c2
-rw-r--r--gcc/testsuite/gcc.dg/Wunreachable-6.c3
-rw-r--r--gcc/testsuite/gcc.dg/Wunreachable-7.c3
-rw-r--r--gcc/testsuite/gcc.dg/align-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/builtin-prefetch-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/builtins-17.c2
-rw-r--r--gcc/testsuite/gcc.dg/builtins-19.c3
-rw-r--r--gcc/testsuite/gcc.dg/builtins-2.c22
-rw-r--r--gcc/testsuite/gcc.dg/builtins-20.c10
-rw-r--r--gcc/testsuite/gcc.dg/builtins-21.c10
-rw-r--r--gcc/testsuite/gcc.dg/builtins-7.c10
-rw-r--r--gcc/testsuite/gcc.dg/builtins-8.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/19930510-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/charconst-3.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/charconst-4.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/mi6.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/tr-paste.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/trad/mi6.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/trad/paste.c2
-rw-r--r--gcc/testsuite/gcc.dg/cpp/trad/strify.c1
-rw-r--r--gcc/testsuite/gcc.dg/fastmath-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/fshort-wchar.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-7.c3
-rw-r--r--gcc/testsuite/gcc.dg/i386-387-8.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-asm-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/i386-cadd.c2
-rw-r--r--gcc/testsuite/gcc.dg/i386-fpcvt-3.c1
-rw-r--r--gcc/testsuite/gcc.dg/i386-loop-3.c3
-rw-r--r--gcc/testsuite/gcc.dg/i386-memset-1.c4
-rw-r--r--gcc/testsuite/gcc.dg/loop-2.c3
-rw-r--r--gcc/testsuite/gcc.dg/nest.c2
-rw-r--r--gcc/testsuite/gcc.dg/noncompile/971104-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/noncompile/990416-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/noncompile/scope.c2
-rw-r--r--gcc/testsuite/gcc.dg/pack-test-4.c2
-rw-r--r--gcc/testsuite/gcc.dg/pack-test-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/pch/inline-4.c1
-rw-r--r--gcc/testsuite/gcc.dg/postincr-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/pr10392-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/pragma-align.c2
-rw-r--r--gcc/testsuite/gcc.dg/profile-generate-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/sibcall-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/sibcall-2.c3
-rw-r--r--gcc/testsuite/gcc.dg/sibcall-3.c3
-rw-r--r--gcc/testsuite/gcc.dg/sibcall-4.c3
-rw-r--r--gcc/testsuite/gcc.dg/sibcall-5.c2
-rw-r--r--gcc/testsuite/gcc.dg/sibcall-6.c3
-rw-r--r--gcc/testsuite/gcc.dg/switch-warn-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/switch-warn-2.c3
-rw-r--r--gcc/testsuite/gcc.dg/torture/builtin-attr-1.c105
-rw-r--r--gcc/testsuite/gcc.dg/torture/builtin-math-1.c28
-rw-r--r--gcc/testsuite/gcc.dg/torture/builtin-noret-2.c3
-rw-r--r--gcc/testsuite/gcc.dg/trampoline-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030703-2.c4
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030709-3.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030730-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030730-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030807-5.c3
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030808-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030814-7.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030815-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030907-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c3
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20030922-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20031113-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20040324-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c3
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/20040517-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c2
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/tailcall-1.c1
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/tailrecursion-5.c3
-rw-r--r--gcc/testsuite/gcc.dg/ultrasp3.c3
-rw-r--r--gcc/testsuite/gcc.dg/winline-7.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/bprob-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/bprob-2.c3
-rw-r--r--gcc/testsuite/gcc.misc-tests/gcov-3.c3
-rw-r--r--gcc/testsuite/gcc.misc-tests/gcov-4.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/gcov-4b.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/gcov-6.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/gcov-7.c3
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c2
-rw-r--r--gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c2
-rw-r--r--gcc/testsuite/objc.dg/nested-func-1.m1
-rw-r--r--gcc/testsuite/objc.dg/special/unclaimed-category-1.m2
122 files changed, 450 insertions, 25 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4ae35e2c75d..2ed388d8762 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,62 @@
+2004-08-03 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * gcc.dg/20001023-1.c, gcc.dg/20001108-1.c, gcc.dg/20001117-1.c,
+ gcc.dg/20010202-1.c, gcc.dg/20011008-2.c, gcc.dg/20011214-1.c,
+ gcc.dg/20020201-1.c, gcc.dg/20020312-2.c, gcc.dg/20020426-2.c,
+ gcc.dg/20030331-2.c, gcc.dg/20030612-1.c, gcc.dg/20030926-1.c,
+ gcc.dg/20031216-1.c, gcc.dg/20031218-3.c, gcc.dg/20040305-2.c,
+ gcc.dg/980226-1.c, gcc.dg/Wreturn-type2.c,
+ gcc.dg/Wunreachable-6.c, gcc.dg/Wunreachable-7.c,
+ gcc.dg/align-1.c, gcc.dg/builtin-prefetch-1.c,
+ gcc.dg/builtins-17.c, gcc.dg/builtins-19.c, gcc.dg/builtins-2.c,
+ gcc.dg/builtins-20.c, gcc.dg/builtins-21.c, gcc.dg/builtins-7.c,
+ gcc.dg/builtins-8.c, gcc.dg/cpp/19930510-1.c,
+ gcc.dg/cpp/charconst-3.c, gcc.dg/cpp/charconst-4.c,
+ gcc.dg/cpp/mi6.c, gcc.dg/cpp/tr-paste.c, gcc.dg/cpp/trad/mi6.c,
+ gcc.dg/cpp/trad/paste.c, gcc.dg/cpp/trad/strify.c,
+ gcc.dg/fastmath-1.c, gcc.dg/fshort-wchar.c, gcc.dg/i386-387-7.c,
+ gcc.dg/i386-387-8.c, gcc.dg/i386-asm-1.c, gcc.dg/i386-cadd.c,
+ gcc.dg/i386-fpcvt-3.c, gcc.dg/i386-loop-3.c,
+ gcc.dg/i386-memset-1.c, gcc.dg/loop-2.c, gcc.dg/nest.c,
+ gcc.dg/noncompile/971104-1.c, gcc.dg/noncompile/990416-1.c,
+ gcc.dg/noncompile/scope.c, gcc.dg/pack-test-4.c,
+ gcc.dg/pack-test-5.c, gcc.dg/pch/inline-4.c, gcc.dg/postincr-1.c,
+ gcc.dg/pr10392-1.c, gcc.dg/pragma-align.c,
+ gcc.dg/profile-generate-1.c, gcc.dg/sibcall-1.c,
+ gcc.dg/sibcall-2.c, gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c,
+ gcc.dg/sibcall-5.c, gcc.dg/sibcall-6.c, gcc.dg/switch-warn-1.c,
+ gcc.dg/switch-warn-2.c, gcc.dg/torture/builtin-attr-1.c,
+ gcc.dg/torture/builtin-math-1.c, gcc.dg/torture/builtin-noret-2.c,
+ gcc.dg/trampoline-1.c, gcc.dg/tree-ssa/20030703-1.c,
+ gcc.dg/tree-ssa/20030703-2.c, gcc.dg/tree-ssa/20030708-1.c,
+ gcc.dg/tree-ssa/20030709-3.c, gcc.dg/tree-ssa/20030710-1.c,
+ gcc.dg/tree-ssa/20030711-1.c, gcc.dg/tree-ssa/20030729-1.c,
+ gcc.dg/tree-ssa/20030730-1.c, gcc.dg/tree-ssa/20030730-2.c,
+ gcc.dg/tree-ssa/20030731-1.c, gcc.dg/tree-ssa/20030807-11.c,
+ gcc.dg/tree-ssa/20030807-2.c, gcc.dg/tree-ssa/20030807-5.c,
+ gcc.dg/tree-ssa/20030807-7.c, gcc.dg/tree-ssa/20030808-1.c,
+ gcc.dg/tree-ssa/20030814-1.c, gcc.dg/tree-ssa/20030814-2.c,
+ gcc.dg/tree-ssa/20030814-3.c, gcc.dg/tree-ssa/20030814-4.c,
+ gcc.dg/tree-ssa/20030814-5.c, gcc.dg/tree-ssa/20030814-6.c,
+ gcc.dg/tree-ssa/20030814-7.c, gcc.dg/tree-ssa/20030815-1.c,
+ gcc.dg/tree-ssa/20030907-1.c, gcc.dg/tree-ssa/20030917-3.c,
+ gcc.dg/tree-ssa/20030922-1.c, gcc.dg/tree-ssa/20031113-1.c,
+ gcc.dg/tree-ssa/20040121-1.c, gcc.dg/tree-ssa/20040319-1.c,
+ gcc.dg/tree-ssa/20040324-1.c, gcc.dg/tree-ssa/20040326-1.c,
+ gcc.dg/tree-ssa/20040326-2.c, gcc.dg/tree-ssa/20040517-1.c,
+ gcc.dg/tree-ssa/ssa-ccp-10.c, gcc.dg/tree-ssa/ssa-pre-1.c,
+ gcc.dg/tree-ssa/tailcall-1.c, gcc.dg/tree-ssa/tailrecursion-5.c,
+ gcc.dg/ultrasp3.c, gcc.dg/winline-7.c, gcc.misc-tests/bprob-1.c,
+ gcc.misc-tests/bprob-2.c, gcc.misc-tests/gcov-3.c,
+ gcc.misc-tests/gcov-4.c, gcc.misc-tests/gcov-4b.c,
+ gcc.misc-tests/gcov-6.c, gcc.misc-tests/gcov-7.c,
+ gcc.misc-tests/i386-pf-3dnow-1.c,
+ gcc.misc-tests/i386-pf-athlon-1.c,
+ gcc.misc-tests/i386-pf-none-1.c, gcc.misc-tests/i386-pf-sse-1.c,
+ objc.dg/nested-func-1.m, objc.dg/special/unclaimed-category-1.m:
+ Declare built-in functions used.
+ * gcc.dg/torture/builtin-attr-1.c (nexttoward): Use FPTEST2ARG2.
+
2004-08-02 Mark Mitchell <mark@codesourcery.com>
PR c++/16707
diff --git a/gcc/testsuite/gcc.dg/20001023-1.c b/gcc/testsuite/gcc.dg/20001023-1.c
index ce5e532ea6c..10cb2725939 100644
--- a/gcc/testsuite/gcc.dg/20001023-1.c
+++ b/gcc/testsuite/gcc.dg/20001023-1.c
@@ -1,6 +1,9 @@
/* { dg-do run } */
/* { dg-options "-O2 -fomit-frame-pointer" } */
+extern void abort (void);
+extern void exit (int);
+
unsigned char a[256], b[256], c[256], d[256];
void foo(unsigned char *x, int y, unsigned char *z)
diff --git a/gcc/testsuite/gcc.dg/20001108-1.c b/gcc/testsuite/gcc.dg/20001108-1.c
index a21d5b0f98f..682257fdb09 100644
--- a/gcc/testsuite/gcc.dg/20001108-1.c
+++ b/gcc/testsuite/gcc.dg/20001108-1.c
@@ -1,6 +1,9 @@
/* { dg-do run } */
/* { dg-options "-O2 -fomit-frame-pointer" } */
+extern void abort (void);
+extern void exit (int);
+
void die (long) __attribute__ ((noreturn));
void die (long e)
diff --git a/gcc/testsuite/gcc.dg/20001117-1.c b/gcc/testsuite/gcc.dg/20001117-1.c
index a16a62c38c7..8eb7f58b6bf 100644
--- a/gcc/testsuite/gcc.dg/20001117-1.c
+++ b/gcc/testsuite/gcc.dg/20001117-1.c
@@ -1,6 +1,9 @@
/* { dg-do run } */
/* { dg-options "-O2 -finstrument-functions" } */
+extern void abort (void);
+extern void exit (int);
+
double
foo (double a, double b)
{
diff --git a/gcc/testsuite/gcc.dg/20010202-1.c b/gcc/testsuite/gcc.dg/20010202-1.c
index e4eaae0b246..f600373b8a3 100644
--- a/gcc/testsuite/gcc.dg/20010202-1.c
+++ b/gcc/testsuite/gcc.dg/20010202-1.c
@@ -1,6 +1,9 @@
/* { dg-do compile { target i?86-*-* sparc*-*-* } } */
/* { dg-options "-O2" } */
+extern void abort (void);
+extern void exit (int);
+
typedef enum { false, true } __attribute__ ((packed)) boolean;
typedef struct {
enum {
diff --git a/gcc/testsuite/gcc.dg/20011008-2.c b/gcc/testsuite/gcc.dg/20011008-2.c
index 5937bcb0e82..01ff172b4ff 100644
--- a/gcc/testsuite/gcc.dg/20011008-2.c
+++ b/gcc/testsuite/gcc.dg/20011008-2.c
@@ -1,6 +1,9 @@
/* { dg-do run } */
/* { dg-options "-O0" } */
+extern void abort (void);
+extern void exit (int);
+
struct { union {int x; int y;}; int q; } b;
union { struct {int x;}; int q; } e;
diff --git a/gcc/testsuite/gcc.dg/20011214-1.c b/gcc/testsuite/gcc.dg/20011214-1.c
index 9dea9048c5a..dd05798fabf 100644
--- a/gcc/testsuite/gcc.dg/20011214-1.c
+++ b/gcc/testsuite/gcc.dg/20011214-1.c
@@ -1,5 +1,8 @@
/* { dg-do run } */
+extern void abort (void);
+extern void exit (int);
+
#define small __attribute__((mode(QI))) int
int main()
{
diff --git a/gcc/testsuite/gcc.dg/20020201-1.c b/gcc/testsuite/gcc.dg/20020201-1.c
index 11326378a0a..d187a66fb00 100644
--- a/gcc/testsuite/gcc.dg/20020201-1.c
+++ b/gcc/testsuite/gcc.dg/20020201-1.c
@@ -7,6 +7,9 @@
/* { dg-options "-fprofile-arcs" } */
/* { dg-do run { target native } } */
+extern void abort (void);
+extern void exit (int);
+
int rand (void);
void srand (unsigned int seed);
diff --git a/gcc/testsuite/gcc.dg/20020312-2.c b/gcc/testsuite/gcc.dg/20020312-2.c
index 6e59cd6cf6f..322c1d04898 100644
--- a/gcc/testsuite/gcc.dg/20020312-2.c
+++ b/gcc/testsuite/gcc.dg/20020312-2.c
@@ -8,6 +8,8 @@
/* { dg-do run } */
/* { dg-options "-O -fno-pic" } */
+extern void abort (void);
+
#if defined(__alpha__)
/* PIC register is $29, but is used even without -fpic. */
#elif defined(__arc__)
diff --git a/gcc/testsuite/gcc.dg/20020426-2.c b/gcc/testsuite/gcc.dg/20020426-2.c
index 56a478f0f7d..e38214cd9cf 100644
--- a/gcc/testsuite/gcc.dg/20020426-2.c
+++ b/gcc/testsuite/gcc.dg/20020426-2.c
@@ -4,6 +4,8 @@
/* { dg-options "-O2" } */
/* { dg-options "-O2 -frename-registers -fomit-frame-pointer -fPIC -mtune=i686" { target i?86-*-* } } */
+extern void exit (int);
+
typedef struct
{
union
diff --git a/gcc/testsuite/gcc.dg/20030331-2.c b/gcc/testsuite/gcc.dg/20030331-2.c
index 210524da456..0509d8aad87 100644
--- a/gcc/testsuite/gcc.dg/20030331-2.c
+++ b/gcc/testsuite/gcc.dg/20030331-2.c
@@ -1,5 +1,7 @@
// { dg-options "" }
+extern int printf (const char *, ...);
+
int foo() {
int yd;
float in[1][yd];
diff --git a/gcc/testsuite/gcc.dg/20030612-1.c b/gcc/testsuite/gcc.dg/20030612-1.c
index 2c4a8d3e7e0..f0875124385 100644
--- a/gcc/testsuite/gcc.dg/20030612-1.c
+++ b/gcc/testsuite/gcc.dg/20030612-1.c
@@ -1,6 +1,8 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
+extern void abort (void);
+
int A, B;
void foo()
diff --git a/gcc/testsuite/gcc.dg/20030926-1.c b/gcc/testsuite/gcc.dg/20030926-1.c
index 39833a65171..806dea76165 100644
--- a/gcc/testsuite/gcc.dg/20030926-1.c
+++ b/gcc/testsuite/gcc.dg/20030926-1.c
@@ -3,6 +3,9 @@
/* { dg-options "-O2 -minline-all-stringops" } */
/* { dg-options "-O2 -minline-all-stringops -march=pentium4" { target i?86-*-* } } */
+extern void *memcpy (void *, const void *, __SIZE_TYPE__);
+extern __SIZE_TYPE__ strlen (const char *);
+
void
foo (char *p)
{
diff --git a/gcc/testsuite/gcc.dg/20031216-1.c b/gcc/testsuite/gcc.dg/20031216-1.c
index d8ee0703d7f..7c706d86bea 100644
--- a/gcc/testsuite/gcc.dg/20031216-1.c
+++ b/gcc/testsuite/gcc.dg/20031216-1.c
@@ -4,6 +4,8 @@
/* { dg-options "-O2" } */
/* { dg-options "-O2 -fPIC" { target s390*-*-* } } */
+extern void abort (void);
+
int count = 0;
char *str;
diff --git a/gcc/testsuite/gcc.dg/20031218-3.c b/gcc/testsuite/gcc.dg/20031218-3.c
index 58878b61f06..0bae456b8e7 100644
--- a/gcc/testsuite/gcc.dg/20031218-3.c
+++ b/gcc/testsuite/gcc.dg/20031218-3.c
@@ -5,6 +5,8 @@
/* { dg-do compile } */
/* { dg-options "-O2 -g" } */
+extern __SIZE_TYPE__ strlen (const char *);
+
int x (char *s)
{
int y () { return (strlen (s)); }
diff --git a/gcc/testsuite/gcc.dg/20040305-2.c b/gcc/testsuite/gcc.dg/20040305-2.c
index b0423a25495..ffaf353e371 100644
--- a/gcc/testsuite/gcc.dg/20040305-2.c
+++ b/gcc/testsuite/gcc.dg/20040305-2.c
@@ -1,6 +1,8 @@
/* PR target/14262 */
/* { dg-do run } */
+extern void abort (void);
+
typedef char ACS;
typedef char LSM;
typedef char PANEL;
diff --git a/gcc/testsuite/gcc.dg/980226-1.c b/gcc/testsuite/gcc.dg/980226-1.c
index f66e9e2a9f7..f9d915f22d4 100644
--- a/gcc/testsuite/gcc.dg/980226-1.c
+++ b/gcc/testsuite/gcc.dg/980226-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile { target i?86-*-* } } */
/* { dg-options -O2 } */
+extern int printf (const char *, ...);
extern double bar (double);
int
diff --git a/gcc/testsuite/gcc.dg/Wreturn-type2.c b/gcc/testsuite/gcc.dg/Wreturn-type2.c
index d57a9146517..781414a1ae0 100644
--- a/gcc/testsuite/gcc.dg/Wreturn-type2.c
+++ b/gcc/testsuite/gcc.dg/Wreturn-type2.c
@@ -2,6 +2,8 @@
missing return. */
/* { dg-do compile } */
+extern void abort (void);
+
f() {} /* { dg-bogus "" "no return warning" } */
int g() { abort (); } /* { dg-bogus "" "no return warning" } */
int main() {} /* { dg-bogus "" "no return warning" } */
diff --git a/gcc/testsuite/gcc.dg/Wunreachable-6.c b/gcc/testsuite/gcc.dg/Wunreachable-6.c
index 77b6228fc86..6aac7aab205 100644
--- a/gcc/testsuite/gcc.dg/Wunreachable-6.c
+++ b/gcc/testsuite/gcc.dg/Wunreachable-6.c
@@ -2,6 +2,9 @@
/* { dg-do compile } */
/* { dg-options "-Wunreachable-code" } */
+extern int printf (const char *, ...);
+extern void exit (int);
+
int main(int argc, char *argv[])
{
if (argc != 1)
diff --git a/gcc/testsuite/gcc.dg/Wunreachable-7.c b/gcc/testsuite/gcc.dg/Wunreachable-7.c
index a19c94a1760..9a4d411be22 100644
--- a/gcc/testsuite/gcc.dg/Wunreachable-7.c
+++ b/gcc/testsuite/gcc.dg/Wunreachable-7.c
@@ -2,6 +2,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -Wunreachable-code" } */
+extern int printf (const char *, ...);
+extern void exit (int);
+
int main(int argc, char *argv[])
{
if (argc != 1)
diff --git a/gcc/testsuite/gcc.dg/align-1.c b/gcc/testsuite/gcc.dg/align-1.c
index 302d7d777a1..187eb5271d2 100644
--- a/gcc/testsuite/gcc.dg/align-1.c
+++ b/gcc/testsuite/gcc.dg/align-1.c
@@ -6,6 +6,8 @@
{ dg-options "" }
*/
+extern void abort (void);
+
struct A
{
char c;
diff --git a/gcc/testsuite/gcc.dg/builtin-prefetch-1.c b/gcc/testsuite/gcc.dg/builtin-prefetch-1.c
index d547cfcd9e2..4e30275fde5 100644
--- a/gcc/testsuite/gcc.dg/builtin-prefetch-1.c
+++ b/gcc/testsuite/gcc.dg/builtin-prefetch-1.c
@@ -5,6 +5,8 @@
/* { dg-do run } */
+extern void exit (int);
+
enum locality { none, low, moderate, high, bogus };
enum rw { read, write };
diff --git a/gcc/testsuite/gcc.dg/builtins-17.c b/gcc/testsuite/gcc.dg/builtins-17.c
index f33512cb916..a9e21fba8a3 100644
--- a/gcc/testsuite/gcc.dg/builtins-17.c
+++ b/gcc/testsuite/gcc.dg/builtins-17.c
@@ -11,7 +11,7 @@
extern void link_error(void);
extern double exp(double);
-
+extern double atan(double);
int main()
{
diff --git a/gcc/testsuite/gcc.dg/builtins-19.c b/gcc/testsuite/gcc.dg/builtins-19.c
index a691f5eb97d..f0583a9783b 100644
--- a/gcc/testsuite/gcc.dg/builtins-19.c
+++ b/gcc/testsuite/gcc.dg/builtins-19.c
@@ -10,6 +10,9 @@
double cabs (__complex__ double);
float cabsf (__complex__ float);
long double cabsl (__complex__ long double);
+double fabs (double);
+float fabsf (float);
+long double fabsl (long double);
void link_error (void);
diff --git a/gcc/testsuite/gcc.dg/builtins-2.c b/gcc/testsuite/gcc.dg/builtins-2.c
index e3d652259b6..b1f31c84aa5 100644
--- a/gcc/testsuite/gcc.dg/builtins-2.c
+++ b/gcc/testsuite/gcc.dg/builtins-2.c
@@ -8,6 +8,28 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ffast-math" } */
+extern double atan (double);
+extern float atanf (float);
+extern long double atanl (long double);
+extern double exp (double);
+extern float expf (float);
+extern long double expl (long double);
+extern double fabs (double);
+extern float fabsf (float);
+extern long double fabsl (long double);
+extern double log (double);
+extern float logf (float);
+extern long double logl (long double);
+extern double pow (double, double);
+extern float powf (float, float);
+extern long double powl (long double, long double);
+extern double sqrt (double);
+extern float sqrtf (float);
+extern long double sqrtl (long double);
+extern double tan (double);
+extern float tanf (float);
+extern long double tanl (long double);
+
double test1(double x)
{
return log(exp(x));
diff --git a/gcc/testsuite/gcc.dg/builtins-20.c b/gcc/testsuite/gcc.dg/builtins-20.c
index 1bd95344ae9..fb7dd95c84b 100644
--- a/gcc/testsuite/gcc.dg/builtins-20.c
+++ b/gcc/testsuite/gcc.dg/builtins-20.c
@@ -10,6 +10,16 @@
#include "builtins-config.h"
+extern double cos (double);
+extern double sin (double);
+extern double tan (double);
+extern float cosf (float);
+extern float sinf (float);
+extern float tanf (float);
+extern long double cosl (long double);
+extern long double sinl (long double);
+extern long double tanl (long double);
+
extern void link_error(void);
void test1(double x)
diff --git a/gcc/testsuite/gcc.dg/builtins-21.c b/gcc/testsuite/gcc.dg/builtins-21.c
index 38d0c4f3114..60b127fe61b 100644
--- a/gcc/testsuite/gcc.dg/builtins-21.c
+++ b/gcc/testsuite/gcc.dg/builtins-21.c
@@ -8,6 +8,16 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ffast-math" } */
+extern double fabs (double);
+extern float fabsf (float);
+extern long double fabsl (long double);
+extern double sqrt (double);
+extern float sqrtf (float);
+extern long double sqrtl (long double);
+extern double exp (double);
+extern float expf (float);
+extern long double expl (long double);
+
double test1(double x)
{
return fabs(x*x);
diff --git a/gcc/testsuite/gcc.dg/builtins-7.c b/gcc/testsuite/gcc.dg/builtins-7.c
index 87995a4d3a0..13e708e2997 100644
--- a/gcc/testsuite/gcc.dg/builtins-7.c
+++ b/gcc/testsuite/gcc.dg/builtins-7.c
@@ -8,6 +8,16 @@
/* { dg-do link } */
/* { dg-options "-O2 -ffast-math" } */
+extern double pow (double, double);
+extern float powf (float, float);
+extern long double powl (long double, long double);
+extern double tan (double);
+extern float tanf (float);
+extern long double tanl (long double);
+extern double atan (double);
+extern float atanf (float);
+extern long double atanl (long double);
+
extern void link_error(void);
void test(double x)
diff --git a/gcc/testsuite/gcc.dg/builtins-8.c b/gcc/testsuite/gcc.dg/builtins-8.c
index 99d1a70d01a..c3066b41cab 100644
--- a/gcc/testsuite/gcc.dg/builtins-8.c
+++ b/gcc/testsuite/gcc.dg/builtins-8.c
@@ -9,6 +9,8 @@
/* { dg-options "-O2 -ffast-math" } */
extern void abort(void);
+extern double pow(double, double);
+extern double sqrt(double);
void test(double x)
{
diff --git a/gcc/testsuite/gcc.dg/cpp/19930510-1.c b/gcc/testsuite/gcc.dg/cpp/19930510-1.c
index 724640a85f7..62c1206745a 100644
--- a/gcc/testsuite/gcc.dg/cpp/19930510-1.c
+++ b/gcc/testsuite/gcc.dg/cpp/19930510-1.c
@@ -1,5 +1,7 @@
/* { dg-do compile } */
+extern void exit (int);
+
#define ugly 3
#ugly "foobar" 3 /* { dg-error "invalid" "invalid directive" } */
int main() { exit (0); }
diff --git a/gcc/testsuite/gcc.dg/cpp/charconst-3.c b/gcc/testsuite/gcc.dg/cpp/charconst-3.c
index 9d7d2399812..7c196639131 100644
--- a/gcc/testsuite/gcc.dg/cpp/charconst-3.c
+++ b/gcc/testsuite/gcc.dg/cpp/charconst-3.c
@@ -9,6 +9,8 @@
#include <limits.h>
+extern void abort (void);
+
int main ()
{
/* These tests require at least 2-byte ints. 8-) */
diff --git a/gcc/testsuite/gcc.dg/cpp/charconst-4.c b/gcc/testsuite/gcc.dg/cpp/charconst-4.c
index 986ea80f57e..aae33d35eef 100644
--- a/gcc/testsuite/gcc.dg/cpp/charconst-4.c
+++ b/gcc/testsuite/gcc.dg/cpp/charconst-4.c
@@ -13,6 +13,8 @@
#include <limits.h>
+extern void abort (void);
+
#if INT_MAX == 32767
# define LONG_CHARCONST '!\234a'
# define SHORT_CHARCONST '\234a'
diff --git a/gcc/testsuite/gcc.dg/cpp/mi6.c b/gcc/testsuite/gcc.dg/cpp/mi6.c
index aa1c8ed2ec5..c3af2d3f237 100644
--- a/gcc/testsuite/gcc.dg/cpp/mi6.c
+++ b/gcc/testsuite/gcc.dg/cpp/mi6.c
@@ -5,6 +5,8 @@
/* { dg-do compile } */
/* { dg-options "" } */
+extern void abort (void);
+
/* Each include file should not be subject to MI optimisation, since
macro definitions can change. Each header increments the variable
VAR if it is defined.
diff --git a/gcc/testsuite/gcc.dg/cpp/tr-paste.c b/gcc/testsuite/gcc.dg/cpp/tr-paste.c
index e884e83c8d5..1dd82766317 100644
--- a/gcc/testsuite/gcc.dg/cpp/tr-paste.c
+++ b/gcc/testsuite/gcc.dg/cpp/tr-paste.c
@@ -5,6 +5,8 @@
/* { dg-do compile } */
/* { dg-options "-traditional-cpp" } */
+extern int printf (const char *, ...);
+
#define A(name) X/**/name
#define B(name) \
diff --git a/gcc/testsuite/gcc.dg/cpp/trad/mi6.c b/gcc/testsuite/gcc.dg/cpp/trad/mi6.c
index aa1c8ed2ec5..c3af2d3f237 100644
--- a/gcc/testsuite/gcc.dg/cpp/trad/mi6.c
+++ b/gcc/testsuite/gcc.dg/cpp/trad/mi6.c
@@ -5,6 +5,8 @@
/* { dg-do compile } */
/* { dg-options "" } */
+extern void abort (void);
+
/* Each include file should not be subject to MI optimisation, since
macro definitions can change. Each header increments the variable
VAR if it is defined.
diff --git a/gcc/testsuite/gcc.dg/cpp/trad/paste.c b/gcc/testsuite/gcc.dg/cpp/trad/paste.c
index 9f1c0db3291..9b83fd30f4e 100644
--- a/gcc/testsuite/gcc.dg/cpp/trad/paste.c
+++ b/gcc/testsuite/gcc.dg/cpp/trad/paste.c
@@ -4,6 +4,8 @@
/* { dg-do compile } */
+extern int printf (const char *, ...);
+
#define A(name) X/**/name
#define B(name) \
diff --git a/gcc/testsuite/gcc.dg/cpp/trad/strify.c b/gcc/testsuite/gcc.dg/cpp/trad/strify.c
index 500ef1ea32f..d97a439709c 100644
--- a/gcc/testsuite/gcc.dg/cpp/trad/strify.c
+++ b/gcc/testsuite/gcc.dg/cpp/trad/strify.c
@@ -4,6 +4,7 @@
#define foo(a, b) c="a"; d="b";
extern void abort ();
+extern void exit (int);
int main ()
{
diff --git a/gcc/testsuite/gcc.dg/fastmath-1.c b/gcc/testsuite/gcc.dg/fastmath-1.c
index 1194a6f7d42..4efe4300467 100644
--- a/gcc/testsuite/gcc.dg/fastmath-1.c
+++ b/gcc/testsuite/gcc.dg/fastmath-1.c
@@ -1,6 +1,8 @@
/* { dg-do run } */
/* { dg-options "-O2 -ffast-math" } */
+extern void abort (void);
+
int foo ( float* dists, int k)
{
if ( ( dists [ 0 ] > 0 ) == ( dists [ 1 ] > 0 ) )
diff --git a/gcc/testsuite/gcc.dg/fshort-wchar.c b/gcc/testsuite/gcc.dg/fshort-wchar.c
index 074e872358b..9f4946307f0 100644
--- a/gcc/testsuite/gcc.dg/fshort-wchar.c
+++ b/gcc/testsuite/gcc.dg/fshort-wchar.c
@@ -7,6 +7,8 @@
Test that __WCHAR_MAX__ is correct with -fshort-wchar. */
+extern void abort (void);
+
int main ()
{
__WCHAR_TYPE__ w = ~(__WCHAR_TYPE__) 0;
diff --git a/gcc/testsuite/gcc.dg/i386-387-7.c b/gcc/testsuite/gcc.dg/i386-387-7.c
index 43c916c61d0..210917ad415 100644
--- a/gcc/testsuite/gcc.dg/i386-387-7.c
+++ b/gcc/testsuite/gcc.dg/i386-387-7.c
@@ -3,6 +3,9 @@
/* { dg-options "-O -ffast-math -march=i686" } */
/* { dg-final { scan-assembler "fsincos" } } */
+extern double sin (double);
+extern double cos (double);
+
double f1(double x)
{
return sin(x) + cos (x);
diff --git a/gcc/testsuite/gcc.dg/i386-387-8.c b/gcc/testsuite/gcc.dg/i386-387-8.c
index 05787160b00..67c16d92c18 100644
--- a/gcc/testsuite/gcc.dg/i386-387-8.c
+++ b/gcc/testsuite/gcc.dg/i386-387-8.c
@@ -5,6 +5,8 @@
/* { dg-final { scan-assembler "fptan" } } */
/* { dg-final { scan-assembler-not "fld1" } } */
+extern double tan (double);
+
double f1(double x)
{
return 1.0 / tan(x);
diff --git a/gcc/testsuite/gcc.dg/i386-asm-1.c b/gcc/testsuite/gcc.dg/i386-asm-1.c
index bf7aa1d0c4b..826f5b6dbe3 100644
--- a/gcc/testsuite/gcc.dg/i386-asm-1.c
+++ b/gcc/testsuite/gcc.dg/i386-asm-1.c
@@ -2,6 +2,7 @@
/* { dg-do run { target i?86-*-* } } */
/* { dg-options "-O2" } */
+extern void abort (void);
static int bar(int x) __asm__("bar") __attribute__((regparm(1)));
static int __attribute__((regparm(1), noinline, used))
bar(int x)
diff --git a/gcc/testsuite/gcc.dg/i386-cadd.c b/gcc/testsuite/gcc.dg/i386-cadd.c
index ef6c16bee78..2c6360b946b 100644
--- a/gcc/testsuite/gcc.dg/i386-cadd.c
+++ b/gcc/testsuite/gcc.dg/i386-cadd.c
@@ -2,6 +2,8 @@
/* { dg-options "-O2 -march=k8" } */
/* { dg-final { scan-assembler "sbb" } } */
+extern void abort (void);
+
/* Conditional increment is best done using sbb $-1, val. */
int t[]={0,0,0,0,1,1,1,1,1,1};
q()
diff --git a/gcc/testsuite/gcc.dg/i386-fpcvt-3.c b/gcc/testsuite/gcc.dg/i386-fpcvt-3.c
index 69d7e3d2cd6..f47cd70ed9a 100644
--- a/gcc/testsuite/gcc.dg/i386-fpcvt-3.c
+++ b/gcc/testsuite/gcc.dg/i386-fpcvt-3.c
@@ -1,6 +1,7 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -msse2 -march=k8" } */
/* { dg-final { scan-assembler-not "cvtss2sd" } } */
+extern double fabs (double);
float a,b;
main()
{
diff --git a/gcc/testsuite/gcc.dg/i386-loop-3.c b/gcc/testsuite/gcc.dg/i386-loop-3.c
index c1b4bcea5be..59ed5bf589f 100644
--- a/gcc/testsuite/gcc.dg/i386-loop-3.c
+++ b/gcc/testsuite/gcc.dg/i386-loop-3.c
@@ -4,6 +4,9 @@
/* { dg-do run { target i?86-*-* } } */
/* { dg-options "-mtune=k6 -O3 -ffast-math -funroll-loops" } */
+extern void *memset (void *, int, __SIZE_TYPE__);
+extern void abort (void);
+
typedef struct
{
unsigned char colormod;
diff --git a/gcc/testsuite/gcc.dg/i386-memset-1.c b/gcc/testsuite/gcc.dg/i386-memset-1.c
index f450dd7287e..b87a05b8df7 100644
--- a/gcc/testsuite/gcc.dg/i386-memset-1.c
+++ b/gcc/testsuite/gcc.dg/i386-memset-1.c
@@ -10,6 +10,10 @@
/* { dg-do run { target "i?86-*-*" } } */
/* { dg-options "-O2 -minline-all-stringops" } */
+extern void *memset (void *, int, __SIZE_TYPE__);
+extern void abort (void);
+extern void exit (int);
+
#ifndef MAX_OFFSET
#define MAX_OFFSET (sizeof (long long))
#endif
diff --git a/gcc/testsuite/gcc.dg/loop-2.c b/gcc/testsuite/gcc.dg/loop-2.c
index 8acc65d116f..fa96f89278c 100644
--- a/gcc/testsuite/gcc.dg/loop-2.c
+++ b/gcc/testsuite/gcc.dg/loop-2.c
@@ -3,6 +3,9 @@
0 iterations of the loop rather than the correct 1. */
/* { dg-do run } */
+extern void abort (void);
+extern void exit (int);
+
__inline__ int tag() { return 0; }
void f ();
diff --git a/gcc/testsuite/gcc.dg/nest.c b/gcc/testsuite/gcc.dg/nest.c
index 264dde26f05..981baece34e 100644
--- a/gcc/testsuite/gcc.dg/nest.c
+++ b/gcc/testsuite/gcc.dg/nest.c
@@ -6,6 +6,8 @@
/* { dg-error "profiler" "No profiler support" { target xstormy16-*-* } 0 } */
/* { dg-error "-pg not supported" "Profiler support missing" { target *-*-sco3.2v5* } 0 } */
+extern void abort (void);
+
long foo (long x)
{
long i, sum = 0;
diff --git a/gcc/testsuite/gcc.dg/noncompile/971104-1.c b/gcc/testsuite/gcc.dg/noncompile/971104-1.c
index ed7cb523c3b..54337b209c9 100644
--- a/gcc/testsuite/gcc.dg/noncompile/971104-1.c
+++ b/gcc/testsuite/gcc.dg/noncompile/971104-1.c
@@ -1,3 +1,4 @@
+extern int printf(const char *, ...);
typedef unsigned short ushort;
struct sembuf {
ushort sem_num;
diff --git a/gcc/testsuite/gcc.dg/noncompile/990416-1.c b/gcc/testsuite/gcc.dg/noncompile/990416-1.c
index 6b69ead2fe1..72aa3cd131c 100644
--- a/gcc/testsuite/gcc.dg/noncompile/990416-1.c
+++ b/gcc/testsuite/gcc.dg/noncompile/990416-1.c
@@ -1,3 +1,4 @@
+extern void *memcpy (void *, const void *, __SIZE_TYPE__);
typedef int word_type;
static void
diff --git a/gcc/testsuite/gcc.dg/noncompile/scope.c b/gcc/testsuite/gcc.dg/noncompile/scope.c
index 0bfc3f284db..7f09c27cffd 100644
--- a/gcc/testsuite/gcc.dg/noncompile/scope.c
+++ b/gcc/testsuite/gcc.dg/noncompile/scope.c
@@ -1,3 +1,5 @@
+extern void abort (void);
+extern void exit (int);
static int v = 3;
f ()
diff --git a/gcc/testsuite/gcc.dg/pack-test-4.c b/gcc/testsuite/gcc.dg/pack-test-4.c
index 27ae0cdcc77..60da6a07751 100644
--- a/gcc/testsuite/gcc.dg/pack-test-4.c
+++ b/gcc/testsuite/gcc.dg/pack-test-4.c
@@ -3,6 +3,8 @@
{ dg-options "" }
{ dg-do run } */
+extern void abort (void);
+
typedef unsigned char uint8_t;
typedef struct {
diff --git a/gcc/testsuite/gcc.dg/pack-test-5.c b/gcc/testsuite/gcc.dg/pack-test-5.c
index e95030c089e..7645043dd84 100644
--- a/gcc/testsuite/gcc.dg/pack-test-5.c
+++ b/gcc/testsuite/gcc.dg/pack-test-5.c
@@ -2,6 +2,8 @@
of a field. */
/* { dg-do run } */
+extern void abort (void);
+
struct A {
double d;
} __attribute__ ((aligned));
diff --git a/gcc/testsuite/gcc.dg/pch/inline-4.c b/gcc/testsuite/gcc.dg/pch/inline-4.c
index e4db473f3cf..60e35aa6266 100644
--- a/gcc/testsuite/gcc.dg/pch/inline-4.c
+++ b/gcc/testsuite/gcc.dg/pch/inline-4.c
@@ -1,4 +1,5 @@
#include "inline-4.h"
+extern int printf (const char *, ...);
int main(void) {
printf (getstring());
return 0;
diff --git a/gcc/testsuite/gcc.dg/postincr-1.c b/gcc/testsuite/gcc.dg/postincr-1.c
index 6aa203cb2ea..752cda40c22 100644
--- a/gcc/testsuite/gcc.dg/postincr-1.c
+++ b/gcc/testsuite/gcc.dg/postincr-1.c
@@ -1,6 +1,8 @@
/* Simple test for proper postincrement semantics. */
/* { dg-do run } */
+extern void abort (void);
+
int i;
int c;
int *f ()
diff --git a/gcc/testsuite/gcc.dg/pr10392-1.c b/gcc/testsuite/gcc.dg/pr10392-1.c
index c71ec4d34b2..8d599b8af74 100644
--- a/gcc/testsuite/gcc.dg/pr10392-1.c
+++ b/gcc/testsuite/gcc.dg/pr10392-1.c
@@ -13,6 +13,7 @@
/* { dg-do run } */
/* { dg-options "-O2" } */
/* { dg-options "-O2 -m4" { target sh4-*-* } } */
+extern void abort (void);
const char *dont_optimize_function_away;
const char *use(const char *str)
diff --git a/gcc/testsuite/gcc.dg/pragma-align.c b/gcc/testsuite/gcc.dg/pragma-align.c
index 5341870b6cb..73869327034 100644
--- a/gcc/testsuite/gcc.dg/pragma-align.c
+++ b/gcc/testsuite/gcc.dg/pragma-align.c
@@ -2,6 +2,8 @@
/* { dg-do run { target i?86-*-linux* i?86-*-*bsd* i?86-*-sco3.2v5* *-*-solaris2.* } } */
+extern void abort (void);
+
struct {
char one;
long two;
diff --git a/gcc/testsuite/gcc.dg/profile-generate-1.c b/gcc/testsuite/gcc.dg/profile-generate-1.c
index 64ebb0e3a5e..9c73e6c63e7 100644
--- a/gcc/testsuite/gcc.dg/profile-generate-1.c
+++ b/gcc/testsuite/gcc.dg/profile-generate-1.c
@@ -1,6 +1,8 @@
/* Bug 16325. */
/* { dg-options "-O -fprofile-generate" } */
+extern void abort (void);
+
int *p1;
int *p2;
int *p3;
diff --git a/gcc/testsuite/gcc.dg/sibcall-1.c b/gcc/testsuite/gcc.dg/sibcall-1.c
index f9b1f7899b4..4521ace9e15 100644
--- a/gcc/testsuite/gcc.dg/sibcall-1.c
+++ b/gcc/testsuite/gcc.dg/sibcall-1.c
@@ -11,6 +11,9 @@
marker. Self-recursion tail calls are optimized for all targets,
regardless of presence of sibcall patterns. */
+extern void abort (void);
+extern void exit (int);
+
extern void recurser_void (int);
extern void track (int);
diff --git a/gcc/testsuite/gcc.dg/sibcall-2.c b/gcc/testsuite/gcc.dg/sibcall-2.c
index cb2d1d599c6..4c226c496e3 100644
--- a/gcc/testsuite/gcc.dg/sibcall-2.c
+++ b/gcc/testsuite/gcc.dg/sibcall-2.c
@@ -11,6 +11,9 @@
marker. Self-recursion tail calls are optimized for all targets,
regardless of presence of sibcall patterns. */
+extern void abort (void);
+extern void exit (int);
+
extern void recurser_void (void);
extern void track (void);
diff --git a/gcc/testsuite/gcc.dg/sibcall-3.c b/gcc/testsuite/gcc.dg/sibcall-3.c
index 37637e70270..86bc8da38e5 100644
--- a/gcc/testsuite/gcc.dg/sibcall-3.c
+++ b/gcc/testsuite/gcc.dg/sibcall-3.c
@@ -13,6 +13,9 @@
(except targets where the test does not work due to the return address
not saved on the regular stack). */
+extern void abort (void);
+extern void exit (int);
+
static void recurser_void1 (int);
static void recurser_void2 (int);
extern void track (int);
diff --git a/gcc/testsuite/gcc.dg/sibcall-4.c b/gcc/testsuite/gcc.dg/sibcall-4.c
index 15d235c471f..bbb03735490 100644
--- a/gcc/testsuite/gcc.dg/sibcall-4.c
+++ b/gcc/testsuite/gcc.dg/sibcall-4.c
@@ -13,6 +13,9 @@
(except targets where the test does not work due to the return address
not saved on the regular stack). */
+extern void abort (void);
+extern void exit (int);
+
static void recurser_void1 (void);
static void recurser_void2 (void);
extern void track (void);
diff --git a/gcc/testsuite/gcc.dg/sibcall-5.c b/gcc/testsuite/gcc.dg/sibcall-5.c
index 424908dba5a..da95f13e25c 100644
--- a/gcc/testsuite/gcc.dg/sibcall-5.c
+++ b/gcc/testsuite/gcc.dg/sibcall-5.c
@@ -2,6 +2,8 @@
/* { dg-do run { target i?86-*-* } } */
/* { dg-options "-O2" } */
+extern void abort (void);
+
int (*f)(int, int) __attribute__((regparm(2)));
int (*g)(int, int, int) __attribute__((regparm(3)));
diff --git a/gcc/testsuite/gcc.dg/sibcall-6.c b/gcc/testsuite/gcc.dg/sibcall-6.c
index 4b0d299f5b7..bb855108ee1 100644
--- a/gcc/testsuite/gcc.dg/sibcall-6.c
+++ b/gcc/testsuite/gcc.dg/sibcall-6.c
@@ -9,6 +9,9 @@
/* { dg-do run { target i?86-*-* s390*-*-* x86_64-*-*} } */
/* { dg-options "-O2 -foptimize-sibling-calls" } */
+extern void abort (void);
+extern void exit (int);
+
int foo (int);
int bar (int);
diff --git a/gcc/testsuite/gcc.dg/switch-warn-1.c b/gcc/testsuite/gcc.dg/switch-warn-1.c
index d98bfa892d6..04ca4e36765 100644
--- a/gcc/testsuite/gcc.dg/switch-warn-1.c
+++ b/gcc/testsuite/gcc.dg/switch-warn-1.c
@@ -1,6 +1,9 @@
/* { dg-do run } */
/* { dg-options "-O0" } */
+extern void abort (void);
+extern void exit (int);
+
/* Check that out-of-bounds case warnings work in the case that the
testing expression is promoted. */
int
diff --git a/gcc/testsuite/gcc.dg/switch-warn-2.c b/gcc/testsuite/gcc.dg/switch-warn-2.c
index ab742669163..7778b66e087 100644
--- a/gcc/testsuite/gcc.dg/switch-warn-2.c
+++ b/gcc/testsuite/gcc.dg/switch-warn-2.c
@@ -2,6 +2,9 @@
/* { dg-do run } */
/* { dg-options "-O0" } */
+extern void abort (void);
+extern void exit (int);
+
int
foo (unsigned int i)
{
diff --git a/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c b/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c
index 304e92afa8f..62070c4e71c 100644
--- a/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c
+++ b/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c
@@ -26,9 +26,10 @@ void test_builtin_##FN(TYPE x, TYPE y) \
{ if (__builtin_##FN(x,y) != __builtin_##FN(x,y)) link_failure_builtin_##FN(); }
/* Also test the regular (non-__builtin_) function. */
-#define TEST1(FN, TYPE) \
+#define TEST1(FN, TYPE, RTYPE) \
BUILTIN_TEST1(FN, TYPE) \
extern void link_failure_##FN(void); \
+extern RTYPE FN(TYPE); \
void test_##FN(TYPE x) { if (FN(x) != FN(x)) link_failure_##FN(); }
/* Test the __builtin_ functions taking void arguments (with the "f"
@@ -153,12 +154,32 @@ void test_builtin_##FN##l(_Complex long double ld1, _Complex long double ld2) \
/* These macros additionally test the non-__builtin_ functions. */
/* Test the functions taking one FP argument (with the "f" and "l"
- variants). */
+ variants) and returning that type. */
#define FPTEST1(FN) \
BUILTIN_FPTEST1(FN) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern double FN(double); \
+extern float FN##f(float); \
+extern long double FN##l(long double); \
+void test_##FN(double d) \
+{ if (FN(d) != FN(d)) link_failure_##FN(); } \
+void test_##FN##f(float f) \
+{ if (FN##f(f) != FN##f(f)) link_failure_##FN##f(); } \
+void test_##FN##l(long double ld) \
+{ if (FN##l(ld) != FN##l(ld)) link_failure_##FN##l(); }
+
+/* Test the functions taking one FP argument (with the "f" and "l"
+ variants) and returning TYPE. */
+#define FPTEST1T(FN, TYPE) \
+BUILTIN_FPTEST1(FN) \
+extern void link_failure_##FN(void); \
+extern void link_failure_##FN##f(void); \
+extern void link_failure_##FN##l(void); \
+extern TYPE FN(double); \
+extern TYPE FN##f(float); \
+extern TYPE FN##l(long double); \
void test_##FN(double d) \
{ if (FN(d) != FN(d)) link_failure_##FN(); } \
void test_##FN##f(float f) \
@@ -173,6 +194,9 @@ BUILTIN_FPTEST2(FN) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern double FN(double, double); \
+extern float FN##f(float, float); \
+extern long double FN##l(long double, long double); \
void test_##FN(double d1, double d2) \
{ if (FN(d1,d2) != FN(d1,d2)) link_failure_##FN(); } \
void test_##FN##f(float f1, float f2) \
@@ -188,6 +212,9 @@ BUILTIN_FPTEST2ARG1(FN, TYPE) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern double FN(TYPE, double); \
+extern float FN##f(TYPE, float); \
+extern long double FN##l(TYPE, long double); \
void test_##FN(TYPE x, double d) \
{ if (FN(x,d) != FN(x,d)) link_failure_##FN(); } \
void test_##FN##f(TYPE x, float f) \
@@ -203,6 +230,9 @@ BUILTIN_FPTEST2ARG2(FN, TYPE) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern double FN(double, TYPE); \
+extern float FN##f(float, TYPE); \
+extern long double FN##l(long double, TYPE); \
void test_##FN(double d, TYPE x) \
{ if (FN(d,x) != FN(d,x)) link_failure_##FN(); } \
void test_##FN##f(float f, TYPE x) \
@@ -217,6 +247,9 @@ BUILTIN_FPTEST3(FN) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern double FN(double, double, double); \
+extern float FN##f(float, float, float); \
+extern long double FN##l(long double, long double, long double); \
void test_##FN(double d1, double d2, double d3) \
{ if (FN(d1,d2,d3) != FN(d1,d2,d3)) link_failure_##FN(); } \
void test_##FN##f(float f1, float f2, float f3) \
@@ -225,12 +258,32 @@ void test_##FN##l(long double ld1, long double ld2, long double ld3) \
{ if (FN##l(ld1,ld2,ld3) != FN##l(ld1,ld2,ld3)) link_failure_##FN##l(); }
/* Test the functions taking one complex argument (with the "f" and
- "l" variants). */
+ "l" variants) and returning that type. */
#define CPTEST1(FN) \
BUILTIN_CPTEST1(FN) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern _Complex double FN(_Complex double); \
+extern _Complex float FN##f(_Complex float); \
+extern _Complex long double FN##l(_Complex long double); \
+void test_##FN(_Complex double d) \
+{ if (FN(d) != FN(d)) link_failure_##FN(); } \
+void test_##FN##f(_Complex float f) \
+{ if (FN##f(f) != FN##f(f)) link_failure_##FN##f(); } \
+void test_##FN##l(_Complex long double ld) \
+{ if (FN##l(ld) != FN##l(ld)) link_failure_##FN##l(); }
+
+/* Test the functions taking one complex argument (with the "f" and
+ "l" variants) and returning the real type. */
+#define CPTEST1R(FN) \
+BUILTIN_CPTEST1(FN) \
+extern void link_failure_##FN(void); \
+extern void link_failure_##FN##f(void); \
+extern void link_failure_##FN##l(void); \
+extern double FN(_Complex double); \
+extern float FN##f(_Complex float); \
+extern long double FN##l(_Complex long double); \
void test_##FN(_Complex double d) \
{ if (FN(d) != FN(d)) link_failure_##FN(); } \
void test_##FN##f(_Complex float f) \
@@ -245,6 +298,9 @@ BUILTIN_CPTEST2(FN) \
extern void link_failure_##FN(void); \
extern void link_failure_##FN##f(void); \
extern void link_failure_##FN##l(void); \
+extern _Complex double FN(_Complex double, _Complex double); \
+extern _Complex float FN##f(_Complex float, _Complex float); \
+extern _Complex long double FN##l(_Complex long double, _Complex long double); \
void test_##FN(_Complex double d1, _Complex double d2) \
{ if (FN(d1,d2) != FN(d1,d2)) link_failure_##FN(); } \
void test_##FN##f(_Complex float f1, _Complex float f2) \
@@ -283,27 +339,27 @@ FPTEST2 (fmod)
FPTEST1 (gamma)
BUILTIN_FPTEST0 (huge_val)
FPTEST2 (hypot)
-FPTEST1 (ilogb)
+FPTEST1T (ilogb, int)
BUILTIN_FPTEST0 (inf)
FPTEST1 (j0)
FPTEST1 (j1)
FPTEST2ARG1 (jn, int)
FPTEST2ARG2 (ldexp, int)
FPTEST1 (lgamma)
-FPTEST1 (llrint)
-FPTEST1 (llround)
+FPTEST1T (llrint, long long)
+FPTEST1T (llround, long long)
FPTEST1 (log)
FPTEST1 (log10)
FPTEST1 (log1p)
FPTEST1 (log2)
FPTEST1 (logb)
-FPTEST1 (lrint)
-FPTEST1 (lround)
+FPTEST1T (lrint, long)
+FPTEST1T (lround, long)
BUILTIN_FPTEST1ARG (nan, char *)
BUILTIN_FPTEST1ARG (nans, char *)
FPTEST1 (nearbyint)
FPTEST2 (nextafter)
-FPTEST2 (nexttoward)
+FPTEST2ARG2 (nexttoward, long double)
FPTEST2 (pow)
FPTEST1 (pow10)
FPTEST2 (remainder)
@@ -328,7 +384,7 @@ FPTEST2ARG1 (yn, int)
/*CPTEST1 (cabs) See http://gcc.gnu.org/ml/gcc-patches/2003-09/msg00040.html */
CPTEST1 (cacos)
CPTEST1 (cacosh)
-CPTEST1 (carg)
+CPTEST1R (carg)
CPTEST1 (casin)
CPTEST1 (casinh)
CPTEST1 (catan)
@@ -336,32 +392,43 @@ CPTEST1 (catanh)
CPTEST1 (ccos)
CPTEST1 (ccosh)
CPTEST1 (cexp)
-CPTEST1 (cimag)
+CPTEST1R (cimag)
/*CPTEST1 (clog)*/
CPTEST1 (conj)
CPTEST2 (cpow)
CPTEST1 (cproj)
-CPTEST1 (creal)
+CPTEST1R (creal)
CPTEST1 (csin)
CPTEST1 (csinh)
CPTEST1 (csqrt)
CPTEST1 (ctan)
CPTEST1 (ctanh)
+/* These next definitions are kludges. When GCC has a <stdint.h> it
+ should be used.
+*/
+#if __INT_MAX__ == __LONG_LONG_MAX__
+typedef int intmax_t;
+#elif __LONG_MAX__ == __LONG_LONG_MAX__
+typedef long intmax_t;
+#else
+typedef long long intmax_t;
+#endif
+
/* Various other const builtins. */
-TEST1 (abs, int)
+TEST1 (abs, int, int)
BUILTIN_TEST1 (clz, int)
BUILTIN_TEST1 (clzl, long)
BUILTIN_TEST1 (clzll, long long)
BUILTIN_TEST1 (ctz, int)
BUILTIN_TEST1 (ctzl, long)
BUILTIN_TEST1 (ctzll, long long)
-TEST1 (ffs, int)
-TEST1 (ffsl, long)
-TEST1 (ffsll, long long)
-TEST1 (imaxabs, int)
-TEST1 (labs, long)
-TEST1 (llabs, long long)
+TEST1 (ffs, int, int)
+TEST1 (ffsl, long, int)
+TEST1 (ffsll, long long, int)
+TEST1 (imaxabs, intmax_t, intmax_t)
+TEST1 (labs, long, long)
+TEST1 (llabs, long long, long long)
BUILTIN_TEST1 (parity, int)
BUILTIN_TEST1 (parityl, long)
BUILTIN_TEST1 (parityll, long long)
diff --git a/gcc/testsuite/gcc.dg/torture/builtin-math-1.c b/gcc/testsuite/gcc.dg/torture/builtin-math-1.c
index 99fef8d7825..d052f5347bc 100644
--- a/gcc/testsuite/gcc.dg/torture/builtin-math-1.c
+++ b/gcc/testsuite/gcc.dg/torture/builtin-math-1.c
@@ -7,6 +7,34 @@
/* { dg-do link } */
+extern double atan (double);
+extern float atanf (float);
+extern long double atanl (long double);
+extern double cbrt (double);
+extern float cbrtf (float);
+extern long double cbrtl (long double);
+extern double cos (double);
+extern float cosf (float);
+extern long double cosl (long double);
+extern double exp (double);
+extern float expf (float);
+extern long double expl (long double);
+extern double log (double);
+extern float logf (float);
+extern long double logl (long double);
+extern double pow (double, double);
+extern float powf (float, float);
+extern long double powl (long double, long double);
+extern double sin (double);
+extern float sinf (float);
+extern long double sinl (long double);
+extern double sqrt (double);
+extern float sqrtf (float);
+extern long double sqrtl (long double);
+extern double tan (double);
+extern float tanf (float);
+extern long double tanl (long double);
+
/* All references to link_error should go away at compile-time. */
extern void link_error(void);
diff --git a/gcc/testsuite/gcc.dg/torture/builtin-noret-2.c b/gcc/testsuite/gcc.dg/torture/builtin-noret-2.c
index d49de7f66de..c8c8609f62c 100644
--- a/gcc/testsuite/gcc.dg/torture/builtin-noret-2.c
+++ b/gcc/testsuite/gcc.dg/torture/builtin-noret-2.c
@@ -15,6 +15,7 @@ int
main (void)
{
volatile int i = 0;
+ extern void exit (int);
if (i)
tabort ();
if (i)
@@ -60,6 +61,7 @@ t_exit (void)
void
_exit (int i)
{
+ extern void abort (void);
abort ();
}
@@ -81,5 +83,6 @@ t_Exit (void)
void
_Exit (int i)
{
+ extern void abort (void);
abort ();
}
diff --git a/gcc/testsuite/gcc.dg/trampoline-1.c b/gcc/testsuite/gcc.dg/trampoline-1.c
index dbbd8509bff..88078621066 100644
--- a/gcc/testsuite/gcc.dg/trampoline-1.c
+++ b/gcc/testsuite/gcc.dg/trampoline-1.c
@@ -8,6 +8,7 @@
trampoline couldn't be made executable. */
extern void abort(void);
+extern double fabs(double);
void foo (void)
{
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c
index f5b3db3460d..44cf3d2b0e9 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030703-1.c
@@ -1,7 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
-
+extern void abort (void);
extern int blah[];
foo(int index)
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030703-2.c b/gcc/testsuite/gcc.dg/tree-ssa/20030703-2.c
index a73150a06a3..d1251c103a2 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030703-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030703-2.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
-
+
+extern void abort (void);
+
union tree_node;
typedef union tree_node *tree;
extern const char tree_code_type[];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c
index 65c8026a341..717c8affd73 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030708-1.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
struct rtx_def;
typedef struct rtx_def *rtx;
enum rtx_code
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030709-3.c b/gcc/testsuite/gcc.dg/tree-ssa/20030709-3.c
index 98681c088c9..2bc21cae70b 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030709-3.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030709-3.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c
index 53e3d5992cf..4b1d18120e1 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030710-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
struct tree_vec
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c
index eba207a25e5..a1ef017dfda 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030711-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c
index b4b1a819ff4..8ac20d5c614 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030729-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030730-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030730-1.c
index 643b5e79271..3dd95eabbcd 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030730-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030730-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-dom3" } */
+extern void exit (int);
extern void *ggc_alloc (__SIZE_TYPE__);
typedef struct dw_attr_struct *dw_attr_ref;
typedef struct dw_attr_struct
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030730-2.c b/gcc/testsuite/gcc.dg/tree-ssa/20030730-2.c
index 06b5710f65f..7fd0c181945 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030730-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030730-2.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-dom3" } */
+extern void exit (int);
extern void *ggc_alloc (__SIZE_TYPE__);
typedef struct dw_attr_struct *dw_attr_ref;
typedef struct dw_attr_struct
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c
index 82634da1c5b..c622c98dcf1 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030731-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
struct rtx_def;
typedef struct rtx_def *rtx;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c b/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c
index 6296346095d..6df4702c70c 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030807-11.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
struct rtx_def;
typedef struct rtx_def *rtx;
struct rtx_def
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c b/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c
index e9837d38814..cd518eba914 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030807-2.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
oof ()
{
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030807-5.c b/gcc/testsuite/gcc.dg/tree-ssa/20030807-5.c
index b530c841a7f..49f3a997d50 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030807-5.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030807-5.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
-
+
+extern void abort (void);
struct rtx_def;
typedef struct rtx_def *rtx;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c b/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c
index 7f31578307a..f1e0d00c235 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030807-7.c
@@ -1,7 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-dom3" } */
-
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030808-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030808-1.c
index 08f8f15f706..11781f9d387 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030808-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030808-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-cddce" } */
+extern void abort (void);
struct rtx_def;
typedef struct rtx_def *rtx;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c
index d165b19bfda..da48d2255a4 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
com(int *blah)
{
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c
index a3f2ae6b70b..5acc6e1dbb8 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-2.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
void
foo (int value)
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c
index 2058c0c987a..bcebd075d6f 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-3.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
void
foo (int value)
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c
index 81711dd75cd..7bdaaebed62 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-4.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3 -fdump-tree-optimized" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
extern const char tree_code_type[];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c
index bab21a3cae8..c34c2dc8bbf 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-5.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3 -fdump-tree-optimized" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
extern const char tree_code_type[];
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c
index c16fda9155c..49b526ccc13 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
enum tree_code
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030814-7.c b/gcc/testsuite/gcc.dg/tree-ssa/20030814-7.c
index cbefbb33c1a..440794d6ae3 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030814-7.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030814-7.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
struct rtx_def;
typedef struct rtx_def *rtx;
struct rtvec_def;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030815-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030815-1.c
index 13a4917e912..ba0cf6b16a0 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030815-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030815-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
typedef unsigned int size_t;
struct rtx_def;
typedef struct rtx_def *rtx;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030907-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030907-1.c
index 3bc5557cf00..6fb37c34349 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030907-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030907-1.c
@@ -6,6 +6,9 @@
/* { dg-do compile } */
/* { dg-options "-O -fdump-tree-optimized" } */
+extern void abort (void);
+extern void exit (int);
+
int main()
{
int i;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c b/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c
index f7fabe5008c..478933b3f48 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030917-3.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fno-tree-dominator-opts -fdump-tree-ccp" } */
-
+
+extern int printf (const char *, ...);
main ()
{
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20030922-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20030922-1.c
index 8876071c81f..f216125eae1 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20030922-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20030922-1.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom3" } */
+extern void abort (void);
union tree_node;
typedef union tree_node *tree;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20031113-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20031113-1.c
index a114379a7ad..865915f4fb3 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20031113-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20031113-1.c
@@ -7,6 +7,8 @@
/* { dg-do compile } */
/* { dg-options "-O1" } */
+extern __SIZE_TYPE__ strlen (const char *);
+
int i;
static void
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c
index 6987e17d907..6225bcdc8a3 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20040121-1.c
@@ -4,6 +4,7 @@
not boolean */
/* { dg-options "-O3" } */
/* { dg-do run } */
+extern void abort (void);
char *foo(char *p, char *q) {
int x = (p !=0) + (q != 0);
if (x==2) return "a"; else return 0;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c
index 571c2aeabad..d6e54497169 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20040319-1.c
@@ -6,6 +6,8 @@
were not being processed by the type based alias analyzer,
resulting in optimizations removing a non-redundant load. */
+extern void abort (void);
+
struct bar { int count; int *arr;};
void foo (struct bar *b)
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20040324-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20040324-1.c
index 15eb0d62381..be718aba692 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20040324-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20040324-1.c
@@ -10,6 +10,9 @@
Therefore, DOM did not see that i was modified between the two ifs
and optimized away the second if. */
+extern void abort (void);
+extern void exit (int);
+
struct x
{
unsigned b:1;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c
index c29655a24fd..4be6049e909 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20040326-1.c
@@ -4,6 +4,9 @@
a .GLOBAL_VAR to model the side effects of functions. Without it,
we were moving the call to Faref() inside the second call to
Faset(). */
+extern void abort (void);
+extern void exit (int);
+
main ()
{
int table, c, elt;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c b/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c
index a3e16ad451e..b1bed75dad2 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20040326-2.c
@@ -4,6 +4,7 @@
/* Gimplification problem exposed by zsh. All the side-effects in
function arguments and in the called expression should happen
before the actual function call. */
+extern void abort (void);
int A;
typedef void (*fnptr) (void);
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20040517-1.c b/gcc/testsuite/gcc.dg/tree-ssa/20040517-1.c
index d3d0100a02c..5f99be2874e 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/20040517-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/20040517-1.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-ssa-vops" } */
+extern void abort (void);
int a;
extern void __attribute__ ((malloc)) *foo ();
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c
index 091703a1017..b5e702c57ea 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-ccp-10.c
@@ -5,6 +5,8 @@
fail to terminate when there is a nontrivial cycle in the corresponding
ssa graph. */
+extern __SIZE_TYPE__ strlen (const char *);
+
void foo(int i)
{
char *s = "abcde";
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-1.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-1.c
index d3c9d42152e..ca1b81c5f02 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-1.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-pre-stats" } */
+extern int printf (const char *, ...);
int main(int argc, char **argv)
{
int a;
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/tailcall-1.c b/gcc/testsuite/gcc.dg/tree-ssa/tailcall-1.c
index c2a85940a30..33901523fb3 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/tailcall-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/tailcall-1.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-tailc-details" } */
+extern void *alloca (__SIZE_TYPE__);
int q(int a);
int *v;
int
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/tailrecursion-5.c b/gcc/testsuite/gcc.dg/tree-ssa/tailrecursion-5.c
index 2940a5019bd..d0d4f3a1e45 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/tailrecursion-5.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/tailrecursion-5.c
@@ -1,6 +1,9 @@
/* { dg-do run } */
/* { dg-options "-O1 -fdump-tree-optimized" } */
+extern void abort (void);
+extern void exit (int);
+
int sum (int n)
{
if (n == 0)
diff --git a/gcc/testsuite/gcc.dg/ultrasp3.c b/gcc/testsuite/gcc.dg/ultrasp3.c
index 5156c17e822..4458658a58e 100644
--- a/gcc/testsuite/gcc.dg/ultrasp3.c
+++ b/gcc/testsuite/gcc.dg/ultrasp3.c
@@ -1,6 +1,9 @@
/* { dg-options "" } */
/* { dg-options "-mcpu=ultrasparc -mv8plus" { target sparc-*-* } } */
+extern void abort (void);
+extern void exit (int);
+
unsigned long long foo (unsigned long long x)
{
return 0x73500000735LL * x;
diff --git a/gcc/testsuite/gcc.dg/winline-7.c b/gcc/testsuite/gcc.dg/winline-7.c
index 634016d2ecf..bab82a2d682 100644
--- a/gcc/testsuite/gcc.dg/winline-7.c
+++ b/gcc/testsuite/gcc.dg/winline-7.c
@@ -1,6 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-Winline -O2" } */
+extern void *alloca (__SIZE_TYPE__);
+
void big (void);
inline void *q (void)
{ /* { dg-warning "(function not inlinable|alloca)" } */
diff --git a/gcc/testsuite/gcc.misc-tests/bprob-1.c b/gcc/testsuite/gcc.misc-tests/bprob-1.c
index 94202504fb5..8c6018c566d 100644
--- a/gcc/testsuite/gcc.misc-tests/bprob-1.c
+++ b/gcc/testsuite/gcc.misc-tests/bprob-1.c
@@ -4,6 +4,8 @@
This test is the same as gcov-4.c. The "count" comments are left in to
make comparisons easier; they are ignored for this test. */
+extern void abort (void);
+
int do_something (int i)
{
return i;
diff --git a/gcc/testsuite/gcc.misc-tests/bprob-2.c b/gcc/testsuite/gcc.misc-tests/bprob-2.c
index 4615b34f4ff..e0931f39c46 100644
--- a/gcc/testsuite/gcc.misc-tests/bprob-2.c
+++ b/gcc/testsuite/gcc.misc-tests/bprob-2.c
@@ -3,6 +3,9 @@
This is the same as test gcc.c-torture/execute/980526-1.c and
gcc.misc-tests/gcov-3.c */
+extern void abort (void);
+extern void exit (int);
+
int expect_do1 = 1, expect_do2 = 2;
static int doit(int x){
diff --git a/gcc/testsuite/gcc.misc-tests/gcov-3.c b/gcc/testsuite/gcc.misc-tests/gcov-3.c
index 36fe64f802b..fcccdeeff41 100644
--- a/gcc/testsuite/gcc.misc-tests/gcov-3.c
+++ b/gcc/testsuite/gcc.misc-tests/gcov-3.c
@@ -4,6 +4,9 @@
/* { dg-options "-fprofile-arcs -ftest-coverage" } */
/* { dg-do run { target native } } */
+extern void abort (void);
+extern void exit (int);
+
int expect_do1 = 1, expect_do2 = 2;
static int doit(int x){
diff --git a/gcc/testsuite/gcc.misc-tests/gcov-4.c b/gcc/testsuite/gcc.misc-tests/gcov-4.c
index 27ef508cfe6..9d8ab1c1097 100644
--- a/gcc/testsuite/gcc.misc-tests/gcov-4.c
+++ b/gcc/testsuite/gcc.misc-tests/gcov-4.c
@@ -4,6 +4,8 @@
/* { dg-options "-fprofile-arcs -ftest-coverage" } */
/* { dg-do run { target native } } */
+extern void abort (void);
+
int do_something (int i)
{
return i;
diff --git a/gcc/testsuite/gcc.misc-tests/gcov-4b.c b/gcc/testsuite/gcc.misc-tests/gcov-4b.c
index 139f10d86c9..7653c5897ad 100644
--- a/gcc/testsuite/gcc.misc-tests/gcov-4b.c
+++ b/gcc/testsuite/gcc.misc-tests/gcov-4b.c
@@ -4,6 +4,8 @@
/* { dg-options "-fprofile-arcs -ftest-coverage" } */
/* { dg-do run { target native } } */
+extern void abort (void);
+
int do_something (int i)
{
return i;
diff --git a/gcc/testsuite/gcc.misc-tests/gcov-6.c b/gcc/testsuite/gcc.misc-tests/gcov-6.c
index 90273d56396..aefab3ed33a 100644
--- a/gcc/testsuite/gcc.misc-tests/gcov-6.c
+++ b/gcc/testsuite/gcc.misc-tests/gcov-6.c
@@ -6,6 +6,8 @@
/* { dg-options "-fprofile-arcs -ftest-coverage" } */
/* { dg-do run { target native } } */
+extern void exit (int);
+
int val;
void
diff --git a/gcc/testsuite/gcc.misc-tests/gcov-7.c b/gcc/testsuite/gcc.misc-tests/gcov-7.c
index 700cec6f533..2e0f6e8b03c 100644
--- a/gcc/testsuite/gcc.misc-tests/gcov-7.c
+++ b/gcc/testsuite/gcc.misc-tests/gcov-7.c
@@ -6,6 +6,9 @@
#include <setjmp.h>
+extern void abort (void);
+extern void exit (int);
+
jmp_buf env;
int val;
int longjmp_taken;
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c
index 5774963d04f..a44c6076481 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-3dnow-1.c
@@ -3,6 +3,8 @@
/* { dg-do compile { target i?86-*-* } } */
+extern void exit (int);
+
char *msg = "howdy there";
void foo (char *p)
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c
index 301e8b7ed9f..09a67d83426 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c
@@ -4,6 +4,8 @@
/* { dg-do compile { target i?86-*-* } } */
+extern void exit (int);
+
char *msg = "howdy there";
void foo (char *p)
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c
index bdd236ade88..0ad3220e856 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c
@@ -3,6 +3,8 @@
/* { dg-do compile { target i?86-*-* } } */
+extern void exit (int);
+
char *msg = "howdy there";
void foo (char *p)
diff --git a/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c b/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c
index 783fc822dae..15275775caa 100644
--- a/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c
+++ b/gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c
@@ -3,6 +3,8 @@
/* { dg-do compile { target i?86-*-* } } */
+extern void exit (int);
+
char *msg = "howdy there";
void foo (char *p)
diff --git a/gcc/testsuite/objc.dg/nested-func-1.m b/gcc/testsuite/objc.dg/nested-func-1.m
index 7a182bd938e..8ec3f722c11 100644
--- a/gcc/testsuite/objc.dg/nested-func-1.m
+++ b/gcc/testsuite/objc.dg/nested-func-1.m
@@ -4,6 +4,7 @@
/* { dg-options "-lobjc" } */
/* { dg-do run } */
#include <stdio.h>
+#include <stdlib.h>
#include <objc/objc.h>
#include <objc/Object.h>
diff --git a/gcc/testsuite/objc.dg/special/unclaimed-category-1.m b/gcc/testsuite/objc.dg/special/unclaimed-category-1.m
index 8b8af5ed307..b3a8c28b5e6 100644
--- a/gcc/testsuite/objc.dg/special/unclaimed-category-1.m
+++ b/gcc/testsuite/objc.dg/special/unclaimed-category-1.m
@@ -4,6 +4,8 @@
#include <objc/objc-api.h>
#include <objc/Object.h>
+extern void abort (void);
+
/* Test loading unclaimed categories - categories of a class defined
separately from the class itself. */