Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2009-06-16 17:21:26 +0400
committerDJ Delorie <dj@redhat.com>2009-06-16 17:21:26 +0400
commitbc95c37690bcca6ea0960b29b5d806f43be6a5da (patch)
tree86a71ae6f0405a99d84810ee0cb7459b29f0fdcb /include/ansidecl.h
parentea3923078a6e2d189595ff8671b34769982556a9 (diff)
merge from gcc
Diffstat (limited to 'include/ansidecl.h')
-rw-r--r--include/ansidecl.h21
1 files changed, 15 insertions, 6 deletions
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__))