From: Luke D. <cod...@ho...> - 2003-03-13 02:12:45
|
>From: Danny Smith <dan...@cl...> >Reply-To: min...@li... >To: min...@li... >Subject: Re: [MinGW-dvlpr] Re: [ mingw-Bugs-698615 ] ld crash with >'-shared' >Date: Thu, 13 Mar 2003 01:10:09 +0000 > > >----- Original Message ----- >From: "Luke Dunstan" <cod...@ho...> >To: <min...@li...> >Sent: Wednesday, 12 March 2003 11:47 >Subject: [MinGW-dvlpr] Re: [ mingw-Bugs-698615 ] ld crash with '-shared' > > > > > > Danny, > > > > I was going to reply about your suggested patch but then I decided to >let > > the binutils mailing list (which I am not subscribed to) deal with it, >but > > I'm still not sure about it. > > >Luke, this seems to work. I can't find any useful examples of IMPORT, >but just to be safe this preserves the former behaviour. > >Forwarding of exports is supported in dlltool but not by ld --shared. >The dot_name usage is involved there as well. > >eg > >EXPORTS >foo = msvcrt.strlen >;bar = ntdll.dll._alldiv >; I'm not sure if the second usage is correct/documented > > >Do you want to submit this since you caught the bug. If not, could you >please review before I make another bison-blunder > >Danny I think it looks fine for the cases we know about, but there is a possibility that GCC could generate symbols with more than one '.', if the source filename is like foo.bar.cpp. To handle this all you need to do is: + dot_name: ID { $$ = $1; } + | dot_name '.' ID + { + char * name = xmalloc (strlen ($1) + 1 + strlen ($3) + 1); + sprintf (name, "%s.%s", $1, $3); + $$ = name; + } + ; Access to anonymous CVS is inconvenient for me so I can't really test patches properly (including for winsup), and you already have write access to binutils CVS. Luke > >ChangeLog > >2003-03-13 <your_name_here> > > * deffilep.y (def_lex): Revert 2003-03-12 change. > (dot_name): New id type and rule. > (expline): Use instead of ID. > (opt_equal_name): Likewise. ><< deffilep.diff >> _________________________________________________________________ Hotmail now available on Australian mobile phones. Go to http://ninemsn.com.au/mobilecentral/hotmail_mobile.asp |