This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Why duplicate symbols in 1.0.1 and not 1.0 ???
- To: bgarcia at fore dot com (Brad M. Garcia), egcs-bugs at cygnus dot com
- Subject: Re: Why duplicate symbols in 1.0.1 and not 1.0 ???
- From: Jason Merrill <jason at cygnus dot com>
- Date: 25 Jan 1998 13:29:57 -0800
- References: <Pine.LNX.3.96.980116073834.11704A-100000.cygnus.egcs.bugs@spud.eng.fore.com>
>>>>> Brad M Garcia <bgarcia@fore.com> writes:
> Many people have mentioned the problem with duplicate symbols on
> non-ELF platforms as follows:
> multiple definition of `__default_alloc_template<false, 0>::end_free'
> multiple definition of `__default_alloc_template<false, 0>::start_free'
> multiple definition of `__default_alloc_template<false, 0>::heap_size'
> multiple definition of `__default_alloc_template<false, 0>::free_list'
> etc...
> Last question - can anyone tell me how to either 1) get rid of the
> colliding definitions
Sun Jan 25 13:20:00 1998 Jason Merrill <jason@rhino.cygnus.com>
* decl.c (cp_finish_decl): When bailing on a comdat variable, also
unset DECL_NOT_REALLY_EXTERN.
Index: decl.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/cp/decl.c,v
retrieving revision 1.28.2.10
diff -c -p -r1.28.2.10 decl.c
*** decl.c 1997/12/19 08:38:29 1.28.2.10
--- decl.c 1998/01/25 21:25:35
*************** cp_finish_decl (decl, init, asmspec_tree
*** 6737,6745 ****
if (flag_weak)
make_decl_one_only (decl);
else
! /* we can't do anything useful; leave vars for explicit
! instantiation. */
! DECL_EXTERNAL (decl) = 1;
}
}
--- 6737,6748 ----
if (flag_weak)
make_decl_one_only (decl);
else
! {
! /* we can't do anything useful; leave vars for explicit
! instantiation. */
! DECL_EXTERNAL (decl) = 1;
! DECL_NOT_REALLY_EXTERN (decl) = 0;
! }
}
}