aboutsummaryrefslogtreecommitdiff
path: root/tccgen.c
diff options
context:
space:
mode:
authorMichael Matz <matz@suse.de>2016-06-28 15:09:40 +0200
committerMichael Matz <matz@suse.de>2016-12-15 17:47:06 +0100
commit6763b02abc5e0076b6f5bc0e116205250ef9fbd6 (patch)
tree485cd722ea5e69f0b0cafb9c64ca894ccf9ef3ca /tccgen.c
parentd5d881d9e946351f00cbc851b965f62553f6e830 (diff)
downloadtinycc-6763b02abc5e0076b6f5bc0e116205250ef9fbd6.tar.gz
tinycc-6763b02abc5e0076b6f5bc0e116205250ef9fbd6.tar.bz2
Accept empty struct member decls
struct S { /*nothing*/; int a; }; is an acceptable struct declaration, there may be stray semicolons in the member list.
Diffstat (limited to 'tccgen.c')
-rw-r--r--tccgen.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/tccgen.c b/tccgen.c
index 4d35bed..930993a 100644
--- a/tccgen.c
+++ b/tccgen.c
@@ -3250,7 +3250,10 @@ static void struct_decl(CType *type, AttributeDef *ad, int u)
offset = 0;
flexible = 0;
while (tok != '}') {
- parse_btype(&btype, &ad1);
+ if (!parse_btype(&btype, &ad1)) {
+ skip(';');
+ continue;
+ }
while (1) {
extra_bytes = 0;
if (flexible)