summaryrefslogtreecommitdiff
path: root/contrib/gcc/cp/init.c
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2001-01-03 17:16:04 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2001-01-03 17:16:04 +0000
commit5401a9ce8becdb7c441d5a0039555dc24d611ba2 (patch)
tree46177f22832f755e34be042b91555eedf10b4f66 /contrib/gcc/cp/init.c
parenta7f8efad11bbd00375303fd0fb2686411c2ba494 (diff)
downloadsrc-test2-5401a9ce8becdb7c441d5a0039555dc24d611ba2.tar.gz
src-test2-5401a9ce8becdb7c441d5a0039555dc24d611ba2.zip
Notes
Diffstat (limited to 'contrib/gcc/cp/init.c')
-rw-r--r--contrib/gcc/cp/init.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/contrib/gcc/cp/init.c b/contrib/gcc/cp/init.c
index aed1fde65519..d70fc3298b9a 100644
--- a/contrib/gcc/cp/init.c
+++ b/contrib/gcc/cp/init.c
@@ -1262,6 +1262,14 @@ no_vlist_base_init (rval, exp, init, binfo, flags)
my_friendly_assert (TREE_CODE (func) == CALL_EXPR, 20000131);
func = TREE_OPERAND (func, 0);
my_friendly_assert (TREE_CODE (func) == ADDR_EXPR, 20000132);
+ func = TREE_OPERAND (func, 0);
+ my_friendly_assert (TREE_CODE (func) == FUNCTION_DECL, 20000133);
+
+ /* If we have already seen a definition for the wrapped function,
+ we don't need to declare it weak. Also, declare_weak will complain
+ if we do. */
+ if (!TREE_ASM_WRITTEN (func))
+ declare_weak (func);
if (init == NULL_TREE
|| (TREE_CODE (init) == TREE_LIST && ! TREE_TYPE (init)))