This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ 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: libstdc++/8197: std::sin(float) causes undefined reference to sinf


"Christian Ehrhardt" <ehrhardt@mathematik.uni-ulm.de> writes:

|  I got some more information on this one and a patch that fixes the
|  problem for me:

Thanks for reporting more info on this issue.

[...]

|  The problem seems to be that std::sin(float) is an inline function defined in
|  cmath. This inline function uses __builtin_sinf which in turn generates
|  a reference to a function sinf.
|  This function even exists and is exported from stubs.o:
|  
|  turing# nm sparc-sun-solaris2.9/libstdc++-v3/libmath/stubs.o  |grep sinf
|  00000714 T sinf
|  
|  However, in libstdc++.so the symbol sinf is private:

Benjamin,

  Do we have infrastructure to export symbols based on target
configurations?  If not, does telling linker-map.gnu to export
non-existing symbols an error?  If not, is it documented to work as
"expected"?

Thanks,

-- Gaby
PS: I just realized I asked more questions that could provide any hints.


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