OSDN Git Service

Merge DECL_PRESERVE_P for C++.
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 22 Feb 2010 21:57:22 +0000 (21:57 +0000)
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 22 Feb 2010 21:57:22 +0000 (21:57 +0000)
2010-02-22  Mike Stump  <mikestump@comcast.net>

PR c++/43125
* decl.c (duplicate_decls): Merge DECL_PRESERVE_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156977 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/cp/decl.c

index e933965..3c967b3 100644 (file)
@@ -1,3 +1,8 @@
+2010-02-22  Mike Stump  <mikestump@comcast.net>
+
+       PR c++/43125
+       * decl.c (duplicate_decls): Merge DECL_PRESERVE_P.
+
 2010-02-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>
 
        PR c++/23510
index a22cf01..3eec0c7 100644 (file)
@@ -2093,6 +2093,10 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
     TREE_USED (newdecl) = 1;
   else if (TREE_USED (newdecl))
     TREE_USED (olddecl) = 1;
+  if (DECL_PRESERVE_P (olddecl))
+    DECL_PRESERVE_P (newdecl) = 1;
+  else if (DECL_PRESERVE_P (newdecl))
+    DECL_PRESERVE_P (olddecl) = 1;
 
   if (TREE_CODE (newdecl) == FUNCTION_DECL)
     {