This is the mail archive of the binutils@sourceware.org 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]

[PATCH] ld: Clarify --wrap documentation


ld/
	ld.texi (--wrap): Add example to emphasise that only undefined
	references are replaced by the linker
---
 ld/ld.texi | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/ld/ld.texi b/ld/ld.texi
index cc0d220fa0..03c5581a3b 100644
--- a/ld/ld.texi
+++ b/ld/ld.texi
@@ -2392,6 +2392,25 @@ you should not put the definition of @code{__real_malloc} in the same
 file as @code{__wrap_malloc}; if you do, the assembler may resolve the
 call before the linker has a chance to wrap it to @code{malloc}.
 
+Only undefined references are replaced by the linker.  So, module internal
+references to @var{symbol} are not resolved to @code{__wrap_@var{symbol}}.  In
+the next example, the call to @code{f} in @code{g} is not resolved to
+@code{__wrap_f}.
+
+@smallexample
+int
+f (void)
+@{
+  return 123;
+@}
+
+int
+g (void)
+@{
+  return f();
+@}
+@end smallexample
+
 @kindex --eh-frame-hdr
 @kindex --no-eh-frame-hdr
 @item --eh-frame-hdr
-- 
2.16.4


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