summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authoraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-18 15:19:43 +0000
committeraldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-18 15:19:43 +0000
commit576b1370b24f6d3edd9847b3a64c81fdbc32018b (patch)
tree25ecd732d665c371bdcd93e5a671ac3b556de254 /include
parenta44300123f81d68890d0dd98012c3d9e38c11e81 (diff)
downloadgcc-576b1370b24f6d3edd9847b3a64c81fdbc32018b.tar.gz
PR other/54324
* ansidecl.h (ATTRIBUTE_UNUSED): Do not set __attribute__ for GCC < 3.4. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194583 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'include')
-rw-r--r--include/ChangeLog6
-rw-r--r--include/ansidecl.h9
2 files changed, 14 insertions, 1 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index ac2b28ed8ff..f3acbfc2124 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,9 @@
+2012-12-18 Aldy Hernandez <aldyh@redhat.com>
+
+ PR other/54324
+ * ansidecl.h (ATTRIBUTE_UNUSED): Do not set __attribute__ for GCC
+ < 3.4.
+
2012-11-09 Jason Merrill <jason@redhat.com>
* demangle.h (enum demangle_component_type): Add
diff --git a/include/ansidecl.h b/include/ansidecl.h
index 23d85bf0e16..40f4a5fea42 100644
--- a/include/ansidecl.h
+++ b/include/ansidecl.h
@@ -279,8 +279,15 @@ So instead we use the macro below and test it against specific values. */
# endif
#endif
+/* Similarly to ARG_UNUSED below. Prior to GCC 3.4, the C++ frontend
+ couldn't parse attributes placed after the identifier name, and now
+ the entire compiler is built with C++. */
#ifndef ATTRIBUTE_UNUSED
-#define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
+#if GCC_VERSION >= 3004
+# define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
+#else
+#define ATTRIBUTE_UNUSED
+#endif
#endif /* ATTRIBUTE_UNUSED */
/* Before GCC 3.4, the C++ frontend couldn't parse attributes placed after the