summaryrefslogtreecommitdiff
path: root/src/cmd/cc/lexbody
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2014-11-14 11:37:54 -0500
committerRuss Cox <rsc@golang.org>2014-11-14 11:37:54 -0500
commitf4110c2e9cc8f316e14f3a4a35789bc821b326bf (patch)
tree3a2b461d76cc134f7b71e5e1ef63bc37e7d25059 /src/cmd/cc/lexbody
parent78d351d121615f1101f28f88920029f20884c689 (diff)
parent4664f7441b495d8fa8aa5001755cb5f85e790b19 (diff)
downloadgo-f4110c2e9cc8f316e14f3a4a35789bc821b326bf.tar.gz
[dev.garbage] all: merge default (f38460037b72) into dev.garbage
This is the revision that dev.cc is branched from. LGTM=austin R=austin CC=golang-codereviews https://codereview.appspot.com/169590043
Diffstat (limited to 'src/cmd/cc/lexbody')
-rw-r--r--src/cmd/cc/lexbody25
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)
{