aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <wilson@gcc.gnu.org>1994-07-02 16:09:49 -0700
committerJim Wilson <wilson@gcc.gnu.org>1994-07-02 16:09:49 -0700
commit1d00bef8190000500896d7433737b255999a907e (patch)
tree725b38fdcfd97ab000fae8247b078aff52649d34
parenta516ce545bbea457697d12217da812e800d8add7 (diff)
downloadgcc-1d00bef8190000500896d7433737b255999a907e.zip
gcc-1d00bef8190000500896d7433737b255999a907e.tar.gz
gcc-1d00bef8190000500896d7433737b255999a907e.tar.bz2
(duplicate_decls): When make void* match char*, set
DECL_IN_SYSTEM_HEADER. From-SVN: r7645
-rw-r--r--gcc/c-decl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 901d0d9..3dea89a 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -1472,6 +1472,10 @@ duplicate_decls (newdecl, olddecl)
/* Make sure we keep void * as ret type, not char *. */
if (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (oldtype))) == void_type_node)
TREE_TYPE (newdecl) = newtype = oldtype;
+
+ /* Set DECL_IN_SYSTEM_HEADER, so that if we see another declaration
+ we will come back here again. */
+ DECL_IN_SYSTEM_HEADER (newdecl) = 1;
}
else if (!types_match
/* Permit char *foo (int, ...); followed by char *foo ();