diff options
Diffstat (limited to 'sys/cmd')
-rw-r--r-- | sys/cmd/cc/ast.c | 3 | ||||
-rw-r--r-- | sys/cmd/cc/cc.h | 3 |
2 files changed, 5 insertions, 1 deletions
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), |