From ca19f6fe479d739e84595fd4a034a8dd0484f2df Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Sat, 30 May 2020 20:37:57 -0700 Subject: fix: more bug squashing of parser --- sys/cmd/cc/ast.c | 3 +++ sys/cmd/cc/cc.h | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'sys') diff --git a/sys/cmd/cc/ast.c b/sys/cmd/cc/ast.c index 6a3ed9f..14eddb9 100644 --- a/sys/cmd/cc/ast.c +++ b/sys/cmd/cc/ast.c @@ -1689,6 +1689,9 @@ spec(Parser *p, Lexer *lx, uint64 *spec) } if (name) declaretag(p, tag, name); + + /* NOTE: This offset is needed to correctly obtain Tstruct */ + n++; break; default: diff --git a/sys/cmd/cc/cc.h b/sys/cmd/cc/cc.h index de1ec3f..8fc5f73 100644 --- a/sys/cmd/cc/cc.h +++ b/sys/cmd/cc/cc.h @@ -528,8 +528,9 @@ enum Mreg = iota(Kregister), Mtls = iota(Ktls), Mtype = iota(Ktypedef), + Mextern = iota(Kextern), - MaskMem = Mauto | Mstatic | Mreg | Mtls | Mtype, + MaskMem = Mauto | Mstatic | Mreg | Mtls | Mtype | Mextern, /* qualifiers */ Qconst = iota(Kconst), -- cgit v1.2.1