[hurd,commited] hurd: Avoid some PLTs in libc and librt

Joseph Myers joseph@codesourcery.com
Tue Apr 3 00:17:00 GMT 2018


As a general matter, calling __foo instead of foo is something done for 
namespace reasons, if there is a standard namespace (or, in principle, one 
such as _DEFAULT_SOURCE, though we don't test that) including a function 
in the calling file, but not foo.  It may also fix local PLT issues, if 
__foo is not exported from the library in question, but if there are only 
PLT issues not namespace ones, the *_hidden_proto / *_hidden_def macros 
would typically be called as a sufficient solution to the PLT issues.

Calling __foo does of course introduce the need for declarations of __foo 
that may not have been previously needed, and those may need to replicate 
properties of the public declarations of foo, such as attributes or the 
presence of inline versions, to avoid regressions.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Libc-alpha mailing list