summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2009-06-16 13:21:26 +0000
committerDJ Delorie <dj@redhat.com>2009-06-16 13:21:26 +0000
commitbc95c37690bcca6ea0960b29b5d806f43be6a5da (patch)
tree86a71ae6f0405a99d84810ee0cb7459b29f0fdcb
parentea3923078a6e2d189595ff8671b34769982556a9 (diff)
downloadcygnal-bc95c37690bcca6ea0960b29b5d806f43be6a5da.tar.gz
cygnal-bc95c37690bcca6ea0960b29b5d806f43be6a5da.tar.bz2
cygnal-bc95c37690bcca6ea0960b29b5d806f43be6a5da.zip
merge from gcc
-rw-r--r--include/ChangeLog4
-rw-r--r--include/ansidecl.h21
2 files changed, 19 insertions, 6 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index 82b104591..6742d24c9 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 f9864cd38..86b094474 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__))