return t;
}
-Type*
-forwdcl(Sym *s)
-{
- Type *t;
-
- // this type has no meaning and
- // will cause an error if referenced.
- // it will be patched when/if the
- // type is ever assigned.
-
- t = typ(TFORW);
- t = ptrto(t);
- return t;
-}
-
/*
* n is a node with a name (or a reversed list of them).
* make it an anonymous declaration of that name's type.
void
defercheckwidth(void)
{
- if(defercalc)
- fatal("defercheckwidth");
+ // we get out of sync on syntax errors, so don't be pedantic.
+ // if(defercalc)
+ // fatal("defercheckwidth");
defercalc = 1;
}
{
$$ = oldtype($1);
}
-| '*' lname /* TODO(rsc): yank */
- {
- Type *t;
-
- t = dodcltype(newtype($2));
- updatetype(t, typ(TFORWSTRUCT));
- $$ = ptrto(t);
- }
| '[' oexpr ']' Btype
{
$$ = aindex($2, $4);