[PATCH] gcc.c-torture/ cleanup

Marek Polacek polacek@redhat.com
Tue Sep 30 15:22:00 GMT 2014


I did this as a part of preparing the testsuite to cope with the
(possible) gnu11 default.  But I think it's a reasonable cleanup
on its own.  With gnu11, we'd start to warn about defaulting to
int, missing function declarations, and functions without return
type.  I added -fgnu89-inline when a test relies on a gnu89 inline
semantics, and -std=gnu89 if a test relies on gnu89 standard.

I have patches that cover the rest of C testsuite, but let's do this
piecewise.

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

Does this approach make sense?

2014-09-30  Marek Polacek  <polacek@redhat.com>

	* gcc.c-torture/compile/20000120-2.c: Use -fgnu89-inline.
	* gcc.c-torture/compile/20011119-1.c: Likewise.
	* gcc.c-torture/compile/20011119-2.c: Likewise.
	* gcc.c-torture/compile/20021120-1.c: Likewise.
	* gcc.c-torture/compile/20021120-2.c: Likewise.
	* gcc.c-torture/compile/20050215-1.c: Likewise.
	* gcc.c-torture/compile/20050215-2.c: Likewise.
	* gcc.c-torture/compile/20050215-3.c: Likewise.
	* gcc.c-torture/compile/pr37669.c: Likewise.
	* gcc.c-torture/execute/20020107-1.c: Likewise.
	* gcc.c-torture/execute/restrict-1.c: Likewise.
	* gcc.c-torture/compile/20090721-1.c: Fix defaulting to int.
	* gcc.c-torture/execute/930529-1.c: Likewise.
	* gcc.c-torture/execute/920612-1.c: Likewise.
	* gcc.c-torture/execute/920711-1.c: Likewise.
	* gcc.c-torture/execute/990127-2.c: Likewise.
	* gcc.c-torture/execute/pr40386.c: Likewise.
	* gcc.c-torture/execute/pr57124.c: Likewise.
	* gcc.c-torture/compile/pr34808.c: Add function declarations.
	* gcc.c-torture/compile/pr42299.c: Likewise.
	* gcc.c-torture/compile/pr48517.c: Use -std=gnu89.
	* gcc.c-torture/compile/simd-6.c: Likewise.
	* gcc.c-torture/execute/pr53645-2.c: Likewise.
	* gcc.c-torture/execute/pr53645.c: Likewise.
	* gcc.c-torture/execute/20001121-1.c: Use -fgnu89-inline.  Add function
	declarations.
	* gcc.c-torture/execute/980608-1.c: Likewise.
	* gcc.c-torture/execute/bcp-1.c: Likewise.
	* gcc.c-torture/execute/p18298.c: Likewise.
	* gcc.c-torture/execute/unroll-1.c: Likewise.
	* gcc.c-torture/execute/va-arg-7.c: Likewise.
	* gcc.c-torture/execute/va-arg-8.c: Likewise.
	* gcc.c-torture/execute/930526-1.c: Use -fgnu89-inline.  Add function
	declarations.  Fix defaulting to int.
	* gcc.c-torture/execute/961223-1.c: Likewise.
	* gcc.c-torture/execute/loop-2c.c: Use -fgnu89-inline and
	-Wno-pointer-to-int-cast.  Fix defaulting to int.

diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20000120-2.c gcc/gcc/testsuite/gcc.c-torture/compile/20000120-2.c
index 737eb92..939c52d 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20000120-2.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20000120-2.c
@@ -1,3 +1,5 @@
+/* { dg-options "-fgnu89-inline" } */
+
 extern __inline__ int
 odd(int i)
 {
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20011119-1.c gcc/gcc/testsuite/gcc.c-torture/compile/20011119-1.c
index b4b80ae..5d036c9 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20011119-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20011119-1.c
@@ -1,3 +1,4 @@
+/* { dg-options "-fgnu89-inline" } */
 /* { dg-require-weak "" } */
 /* { dg-require-alias "" } */
 #define ASMNAME(cname)  ASMNAME2 (__USER_LABEL_PREFIX__, cname)
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20011119-2.c gcc/gcc/testsuite/gcc.c-torture/compile/20011119-2.c
index e06809f..ea1176a 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20011119-2.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20011119-2.c
@@ -1,3 +1,4 @@
+/* { dg-options "-fgnu89-inline" } */
 /* { dg-require-weak "" } */
 /* { dg-require-alias "" } */
 #define ASMNAME(cname)  ASMNAME2 (__USER_LABEL_PREFIX__, cname)
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20021120-1.c gcc/gcc/testsuite/gcc.c-torture/compile/20021120-1.c
index 423f8ec..3dc4928 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20021120-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20021120-1.c
@@ -4,6 +4,8 @@
 /* Verify that GCC doesn't get confused by the
    redefinition of an extern inline function. */
 
+/* { dg-options "-fgnu89-inline" } */
+
 extern int inline foo () { return 0; }
 extern int inline bar () { return 0; }
 static int inline bar () { return foo(); }
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20021120-2.c gcc/gcc/testsuite/gcc.c-torture/compile/20021120-2.c
index 51f0e25..cd9eda0 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20021120-2.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20021120-2.c
@@ -4,6 +4,8 @@
 /* Verify that GCC doesn't get confused by the
    redefinition of an extern inline function. */
 
+/* { dg-options "-fgnu89-inline" } */
+
 extern int inline foo () { return 0; }
 extern int inline bar () { return 0; }
 static int bar () { return foo(); }
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20050215-1.c gcc/gcc/testsuite/gcc.c-torture/compile/20050215-1.c
index e971779..83d0cb2 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20050215-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20050215-1.c
@@ -1,4 +1,5 @@
 /* PR tree-optimization/18947 */
+/* { dg-options "-fgnu89-inline" } */
 extern __inline void f1 (void) { }
 extern __inline void f2 (void) { f1 (); }
 void f2 (void) {}
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20050215-2.c gcc/gcc/testsuite/gcc.c-torture/compile/20050215-2.c
index 44550d0..9feea6a 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20050215-2.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20050215-2.c
@@ -1,4 +1,5 @@
 /* PR tree-optimization/18947 */
+/* { dg-options "-fgnu89-inline" } */
 int v;
 extern __inline void f1 (void) { v++; }
 void f4 (void) { f1 (); }
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20050215-3.c gcc/gcc/testsuite/gcc.c-torture/compile/20050215-3.c
index 7a35eb6..67a4f26 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20050215-3.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20050215-3.c
@@ -1,4 +1,5 @@
 /* PR tree-optimization/18947 */
+/* { dg-options "-fgnu89-inline" } */
 int v;
 extern __inline void f0 (void) { v++; }
 extern __inline void f1 (void) { f0 (); }
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/20090721-1.c gcc/gcc/testsuite/gcc.c-torture/compile/20090721-1.c
index 2122b34..928cafa 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/20090721-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/20090721-1.c
@@ -1,3 +1,3 @@
 /* { dg-options "-fno-tree-sra" } */
 union u {double d;long long ll;};
-f(double x, int n){union u v;v.d=x;if(n>=0){v.ll<<=63;}else{v.ll-=1<<-n;v.ll>>=-n;}return v.ll;}
+int f(double x, int n){union u v;v.d=x;if(n>=0){v.ll<<=63;}else{v.ll-=1<<-n;v.ll>>=-n;}return v.ll;}
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/pr34808.c gcc/gcc/testsuite/gcc.c-torture/compile/pr34808.c
index 8224061..63be3f6 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/pr34808.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/pr34808.c
@@ -6,6 +6,9 @@ extern int flags;
 
 struct r { int code; int val;};
 
+void bar (void);
+void baz (void);
+
 int
 foo (struct r *home)
 {
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/pr37669.c gcc/gcc/testsuite/gcc.c-torture/compile/pr37669.c
index 68e96c6..c78243b 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/pr37669.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/pr37669.c
@@ -1,4 +1,5 @@
 /* This testcase used to fail because a miscompiled execute_fold_all_builtins. */
+/* { dg-options "-fgnu89-inline" } */
 
 typedef __SIZE_TYPE__ size_t;
 extern __inline __attribute__ ((__always_inline__)) int __attribute__
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/pr42299.c gcc/gcc/testsuite/gcc.c-torture/compile/pr42299.c
index 5a9199f..65a9bf7 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/pr42299.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/pr42299.c
@@ -1,5 +1,7 @@
 /* { dg-options "-g" } */
 
+void bar (void);
+
 static int
 foo (int x, int y)
 {
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/pr48517.c gcc/gcc/testsuite/gcc.c-torture/compile/pr48517.c
index 30b3ecb..4cfe038 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/pr48517.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/pr48517.c
@@ -1,6 +1,6 @@
 /* PR c/48517 */
 /* { dg-do compile } */
-/* { dg-options "" } */
+/* { dg-options "-std=gnu89" } */
 
 void bar (const unsigned short *);
 
diff --git gcc/gcc/testsuite/gcc.c-torture/compile/simd-6.c gcc/gcc/testsuite/gcc.c-torture/compile/simd-6.c
index 7998e15..3e34128 100644
--- gcc/gcc/testsuite/gcc.c-torture/compile/simd-6.c
+++ gcc/gcc/testsuite/gcc.c-torture/compile/simd-6.c
@@ -1,3 +1,5 @@
+/* { dg-options "-std=gnu89" } */
+
 typedef int __attribute__((vector_size (8))) vec;
 
 vec a[] = {(vec) {1, 2}, {3, 4}};
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/20001121-1.c gcc/gcc/testsuite/gcc.c-torture/execute/20001121-1.c
index 3647456..a3c6858 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/20001121-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/20001121-1.c
@@ -1,3 +1,8 @@
+/* { dg-options "-fgnu89-inline" } */
+
+extern void abort (void);
+extern void exit (int);
+
 double d;
 
 __inline__ double foo (void)
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/20020107-1.c gcc/gcc/testsuite/gcc.c-torture/execute/20020107-1.c
index d5bbcc4..23d8aeb 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/20020107-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/20020107-1.c
@@ -1,5 +1,6 @@
 /* This testcase failed because - 1 - buf was simplified into ~buf and when
    later expanding it back into - buf + -1, -1 got lost.  */
+/* { dg-options "-fgnu89-inline" } */
 
 extern void abort (void);
 extern void exit (int);
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/920612-1.c gcc/gcc/testsuite/gcc.c-torture/execute/920612-1.c
index bc63003..8553de2 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/920612-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/920612-1.c
@@ -3,5 +3,5 @@
 extern void abort (void);
 extern void exit (int);
 
-f(j)int j;{return++j>0;}
-main(){if(f((~0U)>>1))abort();exit(0);}
+int f(j)int j;{return++j>0;}
+int main(){if(f((~0U)>>1))abort();exit(0);}
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/920711-1.c gcc/gcc/testsuite/gcc.c-torture/execute/920711-1.c
index f72ef7c..de63b8f 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/920711-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/920711-1.c
@@ -3,5 +3,5 @@
 extern void abort (void);
 extern void exit (int);
 
-f(long a){return (--a > 0);}
-main(){if(f(0x80000000L)==0)abort();exit(0);}
+int f(long a){return (--a > 0);}
+int main(){if(f(0x80000000L)==0)abort();exit(0);}
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/930526-1.c gcc/gcc/testsuite/gcc.c-torture/execute/930526-1.c
index bbf63c6..e6a21d2 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/930526-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/930526-1.c
@@ -1,5 +1,9 @@
-inline
-f (x)
+/* { dg-options "-fgnu89-inline" } */
+
+extern void exit (int);
+
+inline void
+f (int x)
 {
   int *(p[25]);
   int m[25*7];
@@ -11,6 +15,7 @@ f (x)
   p[1][0] = 0;
 }
 
+int
 main ()
 {
   f (7);
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/930529-1.c gcc/gcc/testsuite/gcc.c-torture/execute/930529-1.c
index 9c4085c..0f3668e 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/930529-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/930529-1.c
@@ -3,8 +3,9 @@
 extern void abort (void);
 extern void exit (int);
 
-dd (x,d) { return x / d; }
+int dd (int x, int d) { return x / d; }
 
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/961223-1.c gcc/gcc/testsuite/gcc.c-torture/execute/961223-1.c
index 9bc6cfa..d31962a 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/961223-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/961223-1.c
@@ -1,3 +1,8 @@
+/* { dg-options "-fgnu89-inline" } */
+
+extern void exit (int);
+extern void abort (void);
+
 struct s {
   double d;
 };
@@ -9,6 +14,7 @@ sub (struct s s)
   return s;
 }
 
+int
 main ()
 {
   struct s t = { 2.0 };
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/980608-1.c gcc/gcc/testsuite/gcc.c-torture/execute/980608-1.c
index b34d137..f6c15e8 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/980608-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/980608-1.c
@@ -1,5 +1,10 @@
+/* { dg-options "-fgnu89-inline" } */
+
 #include <stdarg.h>
 
+extern void abort(void);
+extern void exit (int);
+
 void f1(int a,int b,int c,int d,int e, int f,int g,int h,int i,int j, int k,int
 l,int m,int n,int o)
 {
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/990127-2.c gcc/gcc/testsuite/gcc.c-torture/execute/990127-2.c
index e87d27a..939000e 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/990127-2.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/990127-2.c
@@ -18,6 +18,7 @@ fpTest (double x, double y)
   fpEq (result1, result2);
 }
 
+int
 main ()
 {
   fpTest (35.7, 45.0);
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/bcp-1.c gcc/gcc/testsuite/gcc.c-torture/execute/bcp-1.c
index 8dd8e22..19c038b 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/bcp-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/bcp-1.c
@@ -1,3 +1,8 @@
+/* { dg-options "-fgnu89-inline" } */
+
+extern void abort (void);
+extern void exit (int);
+
 __attribute__ ((externally_visible)) int global;
 int func(void);
 
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/loop-2c.c gcc/gcc/testsuite/gcc.c-torture/execute/loop-2c.c
index 9facf3b..9326ad0 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/loop-2c.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/loop-2c.c
@@ -1,6 +1,11 @@
+/* { dg-options "-fgnu89-inline -Wno-pointer-to-int-cast" } */
+
+extern void abort (void);
+extern void exit (int);
+
 int a[2];
 
-__inline__ f (b, o)
+__inline__ void f (int b, int o)
 {
   unsigned int i;
   int *p;
@@ -8,11 +13,13 @@ __inline__ f (b, o)
     *--p = i * 3 + o;
 }
 
+void
 g(int b)
 {
   f (b, (int)a);
 }
 
+int
 main ()
 {
   a[0] = a[1] = 0;
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/p18298.c gcc/gcc/testsuite/gcc.c-torture/execute/p18298.c
index 5aff51f..5058996 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/p18298.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/p18298.c
@@ -1,5 +1,8 @@
+/* { dg-options "-fgnu89-inline" } */
+
 #include <stdbool.h>
 #include <stdlib.h>
+extern void abort (void);
 int strcmp (const char*, const char*);
 char s[2048] = "a";
 inline bool foo(const char *str) {
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/pr40386.c gcc/gcc/testsuite/gcc.c-torture/execute/pr40386.c
index 59cd641..f39f1de 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/pr40386.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/pr40386.c
@@ -25,6 +25,7 @@ long long ll = LL_VALUE;
 int shift1 = SHIFT1;
 int shift2 = SHIFT2;
 
+int
 main ()
 {
   if (ROR (c, shift1) != ROR (CHAR_VALUE, SHIFT1))
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/pr53645-2.c gcc/gcc/testsuite/gcc.c-torture/execute/pr53645-2.c
index a03dd2e..4638e30 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/pr53645-2.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/pr53645-2.c
@@ -1,4 +1,5 @@
 /* PR tree-optimization/53645 */
+/* { dg-options "-std=gnu89" } */
 
 typedef unsigned short int UV __attribute__((vector_size (16)));
 typedef short int SV __attribute__((vector_size (16)));
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/pr53645.c gcc/gcc/testsuite/gcc.c-torture/execute/pr53645.c
index 1e70d9e..d86a895 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/pr53645.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/pr53645.c
@@ -1,4 +1,5 @@
 /* PR tree-optimization/53645 */
+/* { dg-options "-std=gnu89" } */
 
 typedef unsigned int UV __attribute__((vector_size (16)));
 typedef int SV __attribute__((vector_size (16)));
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/pr57124.c gcc/gcc/testsuite/gcc.c-torture/execute/pr57124.c
index ca60158..3148345 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/pr57124.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/pr57124.c
@@ -4,7 +4,7 @@
 extern void abort (void);
 extern void exit (int);
 
-__attribute__ ((noinline))
+__attribute__ ((noinline)) void
 foo(short unsigned int *p1, short unsigned int *p2)
 {
   short unsigned int x1, x4;
@@ -23,6 +23,7 @@ foo(short unsigned int *p1, short unsigned int *p2)
   exit (0);
 }
 
+int
 main()
 {
   short unsigned int x, y;
@@ -30,4 +31,3 @@ main()
   y = -10;
   foo (&x, &y);
 }
-
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/restrict-1.c gcc/gcc/testsuite/gcc.c-torture/execute/restrict-1.c
index 3c5696c..c552861 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/restrict-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/restrict-1.c
@@ -2,6 +2,7 @@
     Origin:  Jeremy Denise      <jeremy.denise@libertysurf.fr>
     Reduced: Wolfgang Bangerth  <bangerth@dealii.org>
              Volker Reichelt    <reichelt@igpm.rwth-aachen.de>  */
+/* { dg-options "-fgnu89-inline" } */
 
 extern void abort ();
 
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/unroll-1.c gcc/gcc/testsuite/gcc.c-torture/execute/unroll-1.c
index 8812955..5606978 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/unroll-1.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/unroll-1.c
@@ -1,3 +1,8 @@
+/* { dg-options "-fgnu89-inline" } */
+
+extern void abort (void);
+extern void exit (int);
+
 inline int
 f (int x)
 {
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-7.c gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-7.c
index f45219a..c66cb60 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-7.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-7.c
@@ -1,4 +1,8 @@
 /* Origin: Franz Sirl <Franz.Sirl-kernel@lauterbach.com> */
+/* { dg-options "-fgnu89-inline" } */
+
+extern void abort (void);
+extern void exit (int);
 
 #include <stdarg.h>
 
diff --git gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-8.c gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-8.c
index 964833b..c310693 100644
--- gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-8.c
+++ gcc/gcc/testsuite/gcc.c-torture/execute/va-arg-8.c
@@ -1,4 +1,8 @@
 /* Origin: Franz Sirl <Franz.Sirl-kernel@lauterbach.com> */
+/* { dg-options "-fgnu89-inline" } */
+
+extern void abort (void);
+extern void exit (int);
 
 #include <stdarg.h>
 #include <limits.h>

	Marek



More information about the Gcc-patches mailing list