summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authorkan <kan@FreeBSD.org>2003-08-22 03:14:37 +0000
committerkan <kan@FreeBSD.org>2003-08-22 03:14:37 +0000
commit4b4244e098f9625eb7625df28b3b35a183cbcf7f (patch)
tree9fb7a13cc0e830db1b47dacf20711c20e3c517e9 /contrib
parentda88d76cbeb8a3a8435282a2d4e943388c76d732 (diff)
downloadFreeBSD-src-4b4244e098f9625eb7625df28b3b35a183cbcf7f.zip
FreeBSD-src-4b4244e098f9625eb7625df28b3b35a183cbcf7f.tar.gz
Merge FreeBSD modifications into gcc 3.3.1-release:
1.3 suppress warnings on K&R main.
Diffstat (limited to 'contrib')
-rw-r--r--contrib/gcc/c-decl.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/contrib/gcc/c-decl.c b/contrib/gcc/c-decl.c
index cba3fe5..801a734 100644
--- a/contrib/gcc/c-decl.c
+++ b/contrib/gcc/c-decl.c
@@ -1580,6 +1580,15 @@ duplicate_decls (newdecl, olddecl, different_binding_level)
Update OLDDECL to be the same. */
DECL_ATTRIBUTES (olddecl) = DECL_ATTRIBUTES (newdecl);
+ /* If OLDDECL had its DECL_RTL instantiated, re-invoke make_decl_rtl
+ so that encode_section_info has a chance to look at the new decl
+ flags and attributes. */
+ if (DECL_RTL_SET_P (olddecl)
+ && (TREE_CODE (olddecl) == FUNCTION_DECL
+ || (TREE_CODE (olddecl) == VAR_DECL
+ && TREE_STATIC (olddecl))))
+ make_decl_rtl (olddecl, NULL);
+
return 1;
}
OpenPOWER on IntegriCloud