summaryrefslogtreecommitdiff
path: root/test/ken/rob2.go
diff options
context:
space:
mode:
authorKen Thompson <ken@golang.org>2008-08-12 14:04:03 -0700
committerKen Thompson <ken@golang.org>2008-08-12 14:04:03 -0700
commitfc0fa45e28993ae1bf65b45778ecac529d6f19e3 (patch)
treeeb95384b094b2775bd8422b06f93db178aaa721d /test/ken/rob2.go
parenta138df45905f91f791ee7cceffff286fb4710915 (diff)
downloadgolang-fc0fa45e28993ae1bf65b45778ecac529d6f19e3.tar.gz
fixed bugs in const/case
R=r DELTA=138 (75 added, 12 deleted, 51 changed) OCL=14129 CL=14131
Diffstat (limited to 'test/ken/rob2.go')
-rw-r--r--test/ken/rob2.go72
1 files changed, 35 insertions, 37 deletions
diff --git a/test/ken/rob2.go b/test/ken/rob2.go
index b18435dfc..f7bec7bb7 100644
--- a/test/ken/rob2.go
+++ b/test/ken/rob2.go
@@ -162,35 +162,34 @@ func NextToken()
c = Get();
}
switch c {
- case EOF:
- token = EOF;
- case '(':
- case ')':
- token = c;
- break;
- default:
- for i = 0; i < 100 - 1; { // sizeof tokenbuf - 1
- tokenbuf[i] = convert(byte, c);
- i = i + 1;
- c = Get();
- if c == EOF {
- break;
- }
- if WhiteSpace(c) || c == ')' {
- peekc = c;
- break;
- }
- }
- if i >= 100 - 1 { // sizeof tokenbuf - 1
- panic("atom too long\n");
+ case EOF:
+ token = EOF;
+ case '(', ')':
+ token = c;
+ break;
+ default:
+ for i = 0; i < 100 - 1; { // sizeof tokenbuf - 1
+ tokenbuf[i] = convert(byte, c);
+ i = i + 1;
+ c = Get();
+ if c == EOF {
+ break;
}
- tokenlen = i;
- tokenbuf[i] = nilchar;
- if '0' <= tokenbuf[0] && tokenbuf[0] <= '9' {
- token = '0';
- } else {
- token = 'A';
+ if WhiteSpace(c) || c == ')' {
+ peekc = c;
+ break;
}
+ }
+ if i >= 100 - 1 { // sizeof tokenbuf - 1
+ panic("atom too long\n");
+ }
+ tokenlen = i;
+ tokenbuf[i] = nilchar;
+ if '0' <= tokenbuf[0] && tokenbuf[0] <= '9' {
+ token = '0';
+ } else {
+ token = 'A';
+ }
}
}
@@ -267,16 +266,15 @@ func Parse() *Slist
} else {
// Atom
switch token {
- case EOF:
- return nil;
- case '0':
- slist = atom(atoi());
- case '"':
- case 'A':
- slist = atom(0);
- default:
- slist = nil;
- print("unknown token"); // token, tokenbuf);
+ case EOF:
+ return nil;
+ case '0':
+ slist = atom(atoi());
+ case '"', 'A':
+ slist = atom(0);
+ default:
+ slist = nil;
+ print("unknown token: ", token, "\n");
}
NextToken();
return slist;