http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49614

Iain Sandoe <iains at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011.08.06 07:45:19
                 CC|                            |iains at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #1 from Iain Sandoe <iains at gcc dot gnu.org> 2011-08-06 07:45:19 
UTC ---
well, what the warning is saying is that it wants the function to be declared
inline or it's not happy to accept "always_inline".

I guess the language lawyers could decide that "__attribute__
((always_inline))" implies "inline" - in which case the parsing of the
attribute needs to set DECL_DECLARED_INLINE_P.

===

As things stand, the problem can be resolved by declaring the function inline -
like so;

Index: gcc/testsuite/gcc.dg/vmx/gcc-bug-i.c
===================================================================
--- gcc/testsuite/gcc.dg/vmx/gcc-bug-i.c        (revision 177459)
+++ gcc/testsuite/gcc.dg/vmx/gcc-bug-i.c        (working copy)
@@ -13,7 +13,7 @@
 #define DO_INLINE __attribute__ ((always_inline))
 #define DONT_INLINE __attribute__ ((noinline))

-static DO_INLINE int inline_me(vector signed short data) 
+static inline DO_INLINE int inline_me(vector signed short data) 
 {
   union {vector signed short v; signed short s[8];} u;
   u.v = data;

Reply via email to