From 111ae83bb78f467306fea246c24d235a797680ff Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Thu, 25 Jun 2009 14:44:45 -0700 Subject: [PATCH] 6g: update for spec change CL 30586 R=ken OCL=30593 CL=30756 --- src/cmd/gc/walk.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/cmd/gc/walk.c b/src/cmd/gc/walk.c index 22711bc7d50..18fc7f33594 100644 --- a/src/cmd/gc/walk.c +++ b/src/cmd/gc/walk.c @@ -209,15 +209,8 @@ implicitstar(Node **nn) t = t->type; if(t == T) return; - switch(t->etype) { - case TMAP: - case TSTRING: - case TARRAY: - case TINTER: - break; - default: + if(!isfixedarray(t)) return; - } n = nod(OIND, n, N); walktype(n, Elv); *nn = n; @@ -1736,7 +1729,10 @@ lookdot(Node *n, Type *t) n->xoffset = f1->width; n->type = f1->type; if(t->etype == TINTER) { - implicitstar(&n->left); + if(isptr[n->left->type->etype]) { + n->left = nod(OIND, n->left, N); // implicitstar + walktype(n->left, Elv); + } n->op = ODOTINTER; } return 1;