diff options
| author | Russ Cox <rsc@golang.org> | 2009-05-07 10:30:22 -0700 |
|---|---|---|
| committer | Russ Cox <rsc@golang.org> | 2009-05-07 10:30:22 -0700 |
| commit | 6c5d53ca44c96df1825d8ab9c5cd4382afcf8e8b (patch) | |
| tree | aa6c6e5229b2de026513268025f9f6338c80d7cc | |
| parent | adb56306f4105a783f702639754e7b2b41cdbf22 (diff) | |
| download | golang-6c5d53ca44c96df1825d8ab9c5cd4382afcf8e8b.tar.gz | |
6g: error messages
part 2; missing files
R=ken
OCL=28408
CL=28410
| -rw-r--r-- | src/cmd/gc/dcl.c | 19 | ||||
| -rw-r--r-- | src/cmd/gc/go.h | 1 |
2 files changed, 15 insertions, 5 deletions
diff --git a/src/cmd/gc/dcl.c b/src/cmd/gc/dcl.c index b2eaa09ca..202f48f85 100644 --- a/src/cmd/gc/dcl.c +++ b/src/cmd/gc/dcl.c @@ -151,14 +151,23 @@ int listcount(Node *n) { int v; + Iter s; v = 0; - while(n != N) { + for(n = listfirst(&s, &n); n != N; n = listnext(&s)) + v++; + return v; +} + +int +structcount(Type *t) +{ + int v; + Iter s; + + v = 0; + for(t = structfirst(&s, &t); t != T; t = structnext(&s)) v++; - if(n->op != OLIST) - break; - n = n->right; - } return v; } diff --git a/src/cmd/gc/go.h b/src/cmd/gc/go.h index 91cfed103..c8f3cbf3f 100644 --- a/src/cmd/gc/go.h +++ b/src/cmd/gc/go.h @@ -797,6 +797,7 @@ void dodclconst(Node*, Node*); void defaultlit(Node*, Type*); void defaultlit2(Node*, Node*); int listcount(Node*); +int structcount(Type*); void addmethod(Node*, Type*, int); Node* methodname(Node*, Type*); Sym* methodsym(Sym*, Type*); |
