Hi,

gcc.c-torture/execute/pr39228.c fails with "(test for excess errors)"
on SH for recent revisions.  My gcc.log says:

gcc.c-torture/execute/pr39228.c:20:43: warning: always_inline function might 
not be inlinable [-Wattributes]
...

It looks that alpha has the similar issue:
https://gcc.gnu.org/ml/gcc-testresults/2014-08/msg02660.html

alpha and sh redefine dg-options to "-mieee" in the test case
instead of the default dg-options "-w" and get the above warning.
The patch below tweaks the test to fix it.  Perhaps the first
two lines are enough to avoid the error but avoiding the root cause
of warnings would be better.  Tested on i686-linux and sh4-linux.

Regards,
        kaz
--
        * gcc.c-torture/execute/pr39228.c: Add -w option on sh*-*-*
        and alhpa*-*-*.  Add "inline" keyword to test functions.

--- ORIG/trunk/gcc/testsuite/gcc.c-torture/execute/pr39228.c    2014-08-26 
09:26:20.000000000 +0900
+++ trunk/gcc/testsuite/gcc.c-torture/execute/pr39228.c 2014-09-03 
07:42:30.085524983 +0900
@@ -1,23 +1,23 @@
-/* { dg-options "-mieee" { target sh*-*-* alpha*-*-* } } */
+/* { dg-options "-w -mieee" { target sh*-*-* alpha*-*-* } } */
 /* { dg-skip-if "No Inf/NaN support" { spu-*-* } "*" "" } */
 
 extern void abort (void);
 
-static int __attribute__((always_inline)) testf (float b)
+static inline int __attribute__((always_inline)) testf (float b)
 {
   float c = 1.01f * b;
 
   return __builtin_isinff (c);
 }
 
-static int __attribute__((always_inline)) test (double b)
+static inline int __attribute__((always_inline)) test (double b)
 {
   double c = 1.01 * b;
 
   return __builtin_isinf (c);
 }
 
-static int __attribute__((always_inline)) testl (long double b)
+static inline int __attribute__((always_inline)) testl (long double b)
 {
   long double c = 1.01L * b;
 

Reply via email to