aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/parser.y6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/parser.y b/src/parser.y
index 4d27657..f4e6eb0 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -469,7 +469,7 @@ statelet
}
statement
- : statelet
+ : statelet ";"
| switch
| while
| do_while
@@ -482,10 +482,9 @@ statement
| enum
| macro
| ID ":" { $$ = gen_label($[ID], NULL, src_loc(@$)); }
- | { $$ = gen_empty(src_loc(@$)); }
rev_statements
- : rev_statements ";" statement { $$ = $3; $3->n = $1; }
+ : rev_statements statement { $$ = $2; $2->n = $1; }
| statement
statements
@@ -493,6 +492,7 @@ statements
body
: "{" statements "}" { $$ = gen_block($2, NULL, src_loc(@$)); }
+ | "{" "}" { $$ = gen_block(gen_empty(src_loc(@$)), NULL, src_loc(@$)); }
rev_references
: rev_references "," id { $$ = $3; $$->n = $1; }