This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: yet another possible gas bug


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





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