summaryrefslogtreecommitdiff
path: root/sys/src/cmd/cc/dcl.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-07-30 19:11:16 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2012-07-30 19:11:16 +0200
commit4f33c88a51587681b7be1ae57cfbc43b627c6bc4 (patch)
tree25560404dc80007e5dc268811242c9071f6a1017 /sys/src/cmd/cc/dcl.c
parentfcc5e75d07e5bc6cb3ddac6d9a437e7ec62d0d95 (diff)
import updated compilers from sources
Diffstat (limited to 'sys/src/cmd/cc/dcl.c')
-rw-r--r--sys/src/cmd/cc/dcl.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/sys/src/cmd/cc/dcl.c b/sys/src/cmd/cc/dcl.c
index c21375a94..968654165 100644
--- a/sys/src/cmd/cc/dcl.c
+++ b/sys/src/cmd/cc/dcl.c
@@ -519,7 +519,7 @@ newlist(Node *l, Node *r)
}
void
-suallign(Type *t)
+sualign(Type *t)
{
Type *l;
long o, w;
@@ -581,7 +581,7 @@ suallign(Type *t)
return;
default:
- diag(Z, "unknown type in suallign: %T", t);
+ diag(Z, "unknown type in sualign: %T", t);
break;
}
}
@@ -1180,12 +1180,6 @@ paramconv(Type *t, int f)
{
switch(t->etype) {
- case TUNION:
- case TSTRUCT:
- if(t->width <= 0)
- diag(Z, "incomplete structure: %s", t->tag->name);
- break;
-
case TARRAY:
t = typ(TIND, t->link);
t->width = types[TIND]->width;
@@ -1283,6 +1277,8 @@ pdecl(int c, Type *t, Sym *s)
diag(Z, "parameter cannot have class: %s", s->name);
c = CPARAM;
}
+ if(typesu[t->etype] && t->width <= 0)
+ diag(Z, "incomplete structure: %s", t->tag->name);
adecl(c, t, s);
}