yet another possible gas bug

Denis J Barrow DJ@de.ibm.com
Tue Oct 21 10:44:00 GMT 2003


Thanks for the feedback Alan,
I am aware that aliasing wasn't originally designed to do this case, but in
developing symbol versioning I consider this an ommision in gas,
i.e. you can't make versioned aliases, it should only be a few lines of lex
& yacc to fix it I hope/suspect with glibc versioning being used more
it is only a matter of time before more people run into this limitation.


D.J. Barrow
Linux Kernel Developer
dj@de.ibm.com,barrow_dj@yahoo.com
Phone:0049-7031-16-2943


                                                                                                           
                      Alan Modra                                                                           
                      <amodra@bigpond.n        To:       Denis J Barrow/Germany/Contr/IBM@IBMDE            
                      et.au>                   cc:       binutils@sources.redhat.com                       
                                               Subject:  Re: yet another possible gas bug                  
                      10/21/03 03:52 AM                                                                    
                                                                                                           
                                                                                                           



On Mon, Oct 20, 2003 at 03:43:38PM +0200, Denis J Barrow wrote:
> void test2() __attribute__ ((weak, alias ("test@@VERS_1.1")));

Yes, the assembler complains about
        .set    test2,test@@VERS_1.1

You're trying to use symbols versions in a way they weren't designed
to be used..  There is no provision within gas to refer to a versioned
symbol (ie. with @ in the name), other than via the .symver directive.
The ld info docs cover this reasonably well.  In your case, you'd need
to have the alias refer to the local symbol name, ie. test.

--
Alan Modra
IBM OzLabs - Linux Technology Centre






More information about the Binutils mailing list