diff options
author | Russ Cox <rsc@golang.org> | 2014-11-20 11:48:08 -0500 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2014-11-20 11:48:08 -0500 |
commit | 4a674f45d109048fcef7cd9f2b876e270625c8ed (patch) | |
tree | 3015eab80ef343dda34fb968843c8b2d28987f05 /src/cmd/cc/lexbody | |
parent | fbd764146d71d8929edadc4abd51e89932742000 (diff) | |
parent | 1ac4b754e58ba42944de03808fb96210b065e4c4 (diff) | |
download | go-4a674f45d109048fcef7cd9f2b876e270625c8ed.tar.gz |
[dev.cc] all: merge default (e4ab8f908aac) into dev.cc
TBR=austin
CC=golang-codereviews
https://codereview.appspot.com/179040044
Diffstat (limited to 'src/cmd/cc/lexbody')
-rw-r--r-- | src/cmd/cc/lexbody | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/cmd/cc/lexbody b/src/cmd/cc/lexbody index e24db1bc0..f586aaa20 100644 --- a/src/cmd/cc/lexbody +++ b/src/cmd/cc/lexbody @@ -220,6 +220,31 @@ slookup(char *s) return lookup(); } +LSym *thetext; + +void +settext(LSym *s) +{ + thetext = s; +} + +Sym* +labellookup(Sym *s) +{ + char *p; + Sym *lab; + + if(thetext == nil) { + s->labelname = s->name; + return s; + } + p = smprint("%s.%s", thetext->name, s->name); + lab = slookup(p); + free(p); + lab->labelname = s->name; + return lab; +} + Sym* lookup(void) { |