summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@golang.org>2011-01-11 11:22:47 -0800
committerIan Lance Taylor <iant@golang.org>2011-01-11 11:22:47 -0800
commit180a9f85f39fc1f43b51a643c20ac8dd3ba3a2de (patch)
tree75ad13f3bffc39cade6ec40d9fe3fa58aeeccc60
parent516a2c531be56212cb7a7268ea88e73bec987b74 (diff)
downloadgo-180a9f85f39fc1f43b51a643c20ac8dd3ba3a2de.tar.gz
ld: Permit an Mach-O symbol to be exported in the dynamic symbol table.
Submitting TBR to fix Darwin build. R=rsc TBR=rsc CC=golang-dev http://codereview.appspot.com/3912043
-rw-r--r--src/cmd/ld/ldmacho.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/cmd/ld/ldmacho.c b/src/cmd/ld/ldmacho.c
index f6095fb33..7e38db0e4 100644
--- a/src/cmd/ld/ldmacho.c
+++ b/src/cmd/ld/ldmacho.c
@@ -630,8 +630,10 @@ ldmacho(Biobuf *f, char *pkg, int64 len, char *pn)
s->size = (sym+1)->value - sym->value;
else
s->size = sect->addr + sect->size - sym->value;
- s->dynimplib = nil; // satisfy dynimport
- s->dynimpname = nil; // satisfy dynimport
+ if(!s->dynexport) {
+ s->dynimplib = nil; // satisfy dynimport
+ s->dynimpname = nil; // satisfy dynimport
+ }
if(outer->type == STEXT) {
Prog *p;