src/cmd/ld/ldelf.c | 6 ++++-- diff --git a/src/cmd/ld/ldelf.c b/src/cmd/ld/ldelf.c index ccf6a412f7b5948c86444c31c87a41963a273b88..44bbe68ee07e915c10a38de29200c1a775f40189 100644 --- a/src/cmd/ld/ldelf.c +++ b/src/cmd/ld/ldelf.c @@ -641,8 +641,10 @@ s = sym.sym; s->sub = sect->sym->sub; sect->sym->sub = s; s->type = sect->sym->type | SSUB; - s->dynimplib = nil; // satisfy dynimport - s->dynimpname = nil; // satisfy dynimport + if(!s->dynexport) { + s->dynimplib = nil; // satisfy dynimport + s->dynimpname = nil; // satisfy dynimport + } s->value = sym.value; s->size = sym.size; s->outer = sect->sym;