1
0
mirror of https://github.com/golang/go synced 2024-11-14 06:30:22 -07:00

liblink: use explicit field for globl duplicate detection

Overloading size leads to problems if clients
try to set up an LSym by hand.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/44140043
This commit is contained in:
Russ Cox 2013-12-18 19:36:14 -05:00
parent 2404b7f168
commit 4890502af6
2 changed files with 3 additions and 1 deletions

View File

@ -131,6 +131,7 @@ struct LSym
uchar hide; uchar hide;
uchar leaf; // arm only uchar leaf; // arm only
uchar fnptr; // arm only uchar fnptr; // arm only
uchar seenglobl;
int16 symid; // for writing .5/.6/.8 files int16 symid; // for writing .5/.6/.8 files
int32 dynid; int32 dynid;
int32 sig; int32 sig;

View File

@ -167,7 +167,8 @@ linkwriteobj(Link *ctxt, Biobuf *b)
if(p->as == ctxt->arch->AGLOBL) { if(p->as == ctxt->arch->AGLOBL) {
s = p->from.sym; s = p->from.sym;
if(s->size) print("duplicate %P\n", p); if(s->seenglobl++)
print("duplicate %P\n", p);
if(data == nil) if(data == nil)
data = s; data = s;
else else