diff options
author | Joseph Myers <jsm@polyomino.org.uk> | 2004-09-29 21:27:26 +0100 |
---|---|---|
committer | Joseph Myers <jsm28@gcc.gnu.org> | 2004-09-29 21:27:26 +0100 |
commit | 302a2cc5c6b2e6e6e1778146f691e67a5ccd0eea (patch) | |
tree | 4d6af7bfab6a91d602bda4e9a23e6b7fcfeac89c /gcc/c-decl.c | |
parent | 08272b85285330a9b36c2766ea91468d609aff35 (diff) | |
download | gcc-302a2cc5c6b2e6e6e1778146f691e67a5ccd0eea.zip gcc-302a2cc5c6b2e6e6e1778146f691e67a5ccd0eea.tar.gz gcc-302a2cc5c6b2e6e6e1778146f691e67a5ccd0eea.tar.bz2 |
re PR c/7425 (deprecated attribute doesn't merge with multiple declarations)
PR c/7425
* c-decl.c (merge_decls): Merge TREE_DEPRECATED.
cp:
* decl.c (duplicate_decls): Merge TREE_DEPRECATED.
testsuite:
* gcc.dg/deprecated-3.c, g++.dg/warn/deprecated-2.C: New tests.
From-SVN: r88303
Diffstat (limited to 'gcc/c-decl.c')
-rw-r--r-- | gcc/c-decl.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c index 4137876..38a13fd 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -1586,6 +1586,10 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype) make_var_volatile (newdecl); } + /* Merge deprecatedness. */ + if (TREE_DEPRECATED (newdecl)) + TREE_DEPRECATED (olddecl) = 1; + /* Keep source location of definition rather than declaration. */ if (DECL_INITIAL (newdecl) == 0 && DECL_INITIAL (olddecl) != 0) DECL_SOURCE_LOCATION (newdecl) = DECL_SOURCE_LOCATION (olddecl); |