aboutsummaryrefslogtreecommitdiff
path: root/cibic.y
diff options
context:
space:
mode:
Diffstat (limited to 'cibic.y')
-rw-r--r--cibic.y5
1 files changed, 4 insertions, 1 deletions
diff --git a/cibic.y b/cibic.y
index 1a644a4..40ea4bb 100644
--- a/cibic.y
+++ b/cibic.y
@@ -72,7 +72,10 @@ init_declarators
init_declarator
: declarator { $$ = cnode_add_loc(cnode_create_init_declr($1, cnode_create_nop()), @$); }
- | declarator '=' initializer { $$ = cnode_add_loc(cnode_create_init_declr($1, $3), @$); }
+ | declarator { def_exit(); } '=' initializer {
+ $$ = cnode_add_loc(cnode_create_init_declr($1, $4), @$);
+ def_enter(FORCE_ID);
+ }
initializer
: assignment_expression { $$ = cnode_add_loc(cnode_create_initr(INITR_NORM, $1), @$); }