From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Lance Taylor To: dj@delorie.com Cc: snowball3@bigfoot.com, binutils@sourceware.cygnus.com Subject: Re: .gnu.linkonce COFF support Date: Tue, 13 Jul 1999 19:20:00 -0000 Message-id: <19990714021852.9180.qmail@daffy.airs.com> References: <199907140145.VAA06257@indy.delorie.com> X-SW-Source: 1999-q3/msg00192.html Date: Tue, 13 Jul 1999 21:45:49 -0400 (EDT) From: DJ Delorie > Some questions about possibilities for DJGPP COFF. Would enabling > .gnu.linkonce.* for DJGPP COFF improve template support much over > what weak symbols do already? This would require enabling the long > section name feature (> 8 characters) , but it can be turned on by one > line. The "long section name feature" is a remnant from PE's specs, and binutils doesn't implement it properly. The right way is to use a specially designated symbol (usually the function name's symbol) as the unique id, not the section name. I would discourage adding broken support to DJGPP when it needs to be fixed for PE anyway. If you want to go this route, figure out how to do it the right way (the MS PE way) so that we won't have to jump through hoops later when the PE support is fixed. I'm not sure this is quite right. The COMDAT section support in the binutils is wrong, and it does work the way you say. The long section name support is different and unrelated. As far as I know, the binutils support long section names as they are used and generated by the Microsoft tools. I took Mark's question to be literally about .gnu.linkonce.*, as in the GNU extension to ELF, which was perhaps an error. It's true that I wouldn't recommend using PE style COMDAT sections right now, since that work will change. Ian