aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCatherine Moore <clm@cygnus.com>2000-05-05 18:16:49 +0000
committerCatherine Moore <clm@gcc.gnu.org>2000-05-05 14:16:49 -0400
commitd20a70b4f6fd784f648d073eaa8434882384b14b (patch)
treeb6c284cb2d81cf25aef09aa15080941d6970e2f6
parent37ceff9dc30e39146fbce6a1cf8c5d1c8bc19b20 (diff)
downloadgcc-d20a70b4f6fd784f648d073eaa8434882384b14b.zip
gcc-d20a70b4f6fd784f648d073eaa8434882384b14b.tar.gz
gcc-d20a70b4f6fd784f648d073eaa8434882384b14b.tar.bz2
c-common.c (decl_attributes): For TYPE_DECLs attach the attribute to the decl.
* c-common.c (decl_attributes): For TYPE_DECLs attach the attribute to the decl. * c-decl.c (pushdecl): Propagate the USED attribute to the type copy. From-SVN: r33716
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/c-common.c5
-rw-r--r--gcc/c-decl.c1
3 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 84e96eb..165ba5f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2000-05-05 Catherine Moore <clm@cygnus.com>
+
+ * c-common.c (decl_attributes): For TYPE_DECLs attach the
+ attribute to the decl.
+ * c-decl.c (pushdecl): Propagate the USED attribute to the
+ type copy.
+
2000-05-05 Richard Henderson <rth@cygnus.com>
* rtlanal.c (reg_overlap_mentioned_p): Treat parallels in the
diff --git a/gcc/c-common.c b/gcc/c-common.c
index b699405..30985b5 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -604,7 +604,10 @@ decl_attributes (node, attributes, prefix_attributes)
case A_UNUSED:
if (is_type)
- TREE_USED (type) = 1;
+ if (decl)
+ TREE_USED (decl) = 1;
+ else
+ TREE_USED (type) = 1;
else if (TREE_CODE (decl) == PARM_DECL
|| TREE_CODE (decl) == VAR_DECL
|| TREE_CODE (decl) == FUNCTION_DECL
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 4d175cb..41e3c82 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -2139,6 +2139,7 @@ pushdecl (x)
DECL_ORIGINAL_TYPE (x) = tt;
tt = build_type_copy (tt);
TYPE_NAME (tt) = x;
+ TREE_USED (tt) = TREE_USED (x);
TREE_TYPE (x) = tt;
}
}