Fix for leftover COFF debugging symbols take 2

Mark E. snowball3@bigfoot.com
Fri Jul 21 07:00:00 GMT 2000
Hi guys,
Two Cygwin folks have tested this revised patch and found no problems in generating 
DLLs.

2000-07-21  Mark Elbrecht  <snowball3@bigfoot.com>

	* config/obj-coff.c (obj_frob_symbol): Don't merge labels. Don't merge
	  if the symbol isn't constant. Return immediately if a symbol is merged.

Index: src/gas/config/obj-coff.c
===================================================================
RCS file: /cvs/src/src/gas/config/obj-coff.c,v
retrieving revision 1.31
diff -c -p -r1.31 obj-coff.c
*** obj-coff.c	2000/07/20 23:38:05	1.31
--- obj-coff.c	2000/07/20 23:48:04
*************** coff_frob_symbol (symp, punt)
*** 1139,1149 ****
--- 1139,1152 ----
        symbolS *real;
        if (!SF_GET_LOCAL (symp)
  	  && !SF_GET_STATICS (symp)
+ 	  && S_GET_STORAGE_CLASS (symp) != C_LABEL
+ 	  && symbol_constant_p(symp)
  	  && (real = symbol_find_base (S_GET_NAME (symp), DO_NOT_STRIP))
  	  && real != symp)
  	{
  	  c_symbol_merge (symp, real);
  	  *punt = 1;
+ 	  return;
  	}
        if (!S_IS_DEFINED (symp) && !SF_GET_LOCAL (symp))
  	{



More information about the Binutils mailing list