diff options
-rw-r--r-- | include/ChangeLog | 4 | ||||
-rw-r--r-- | include/ansidecl.h | 21 |
2 files changed, 19 insertions, 6 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 82b1045..6742d24 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2009-06-09 Ian Lance Taylor <ian@airs.com> + + * ansidecl.h (ATTRIBUTE_UNUSED_LABEL): Define for C++. + 2009-06-15 Nick Clifton <nickc@redhat.com> * dis-asm.h (struct disassemble_info): New value for the flags diff --git a/include/ansidecl.h b/include/ansidecl.h index f9864cd..86b0944 100644 --- a/include/ansidecl.h +++ b/include/ansidecl.h @@ -261,14 +261,23 @@ So instead we use the macro below and test it against specific values. */ # endif /* GNUC >= 2.96 */ #endif /* ATTRIBUTE_MALLOC */ -/* Attributes on labels were valid as of gcc 2.93. */ +/* Attributes on labels were valid as of gcc 2.93 and g++ 4.5. For + g++ an attribute on a label must be followed by a semicolon. */ #ifndef ATTRIBUTE_UNUSED_LABEL -# if (!defined (__cplusplus) && GCC_VERSION >= 2093) -# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED +# ifndef __cplusplus +# if GCC_VERSION >= 2093 +# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED +# else +# define ATTRIBUTE_UNUSED_LABEL +# endif # else -# define ATTRIBUTE_UNUSED_LABEL -# endif /* !__cplusplus && GNUC >= 2.93 */ -#endif /* ATTRIBUTE_UNUSED_LABEL */ +# if GCC_VERSION >= 4005 +# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED ; +# else +# define ATTRIBUTE_UNUSED_LABEL +# endif +# endif +#endif #ifndef ATTRIBUTE_UNUSED #define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) |