diff -r 38229f438d8d sys/src/cmd/cc/dcl.c --- a/sys/src/cmd/cc/dcl.c Mon Aug 12 19:15:02 2019 +0200 +++ b/sys/src/cmd/cc/dcl.c Tue Aug 13 17:58:14 2019 -0700 @@ -346,6 +346,13 @@ if(a->type == T) return Z; + if(a->op == OADD){ + if(a->left->op == OADDR && a->right->op == OCONST){ + l = a->left; + l->left->xoffset += a->right->vconst; + a = l; + } + } if(a->op == OCONST) { if(vconst(a) && t->etype == TIND && a->type && a->type->etype != TIND){ diag(a, "initialize pointer to an integer: %s", s->name);