This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Why duplicate symbols in 1.0.1 and not 1.0 ???


>>>>> 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;
! 		}
  	    }
  	}
  


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]