diff options
Diffstat (limited to 'cparser/Cleanup.ml')
-rw-r--r-- | cparser/Cleanup.ml | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/cparser/Cleanup.ml b/cparser/Cleanup.ml index 09595a1..09eaff9 100644 --- a/cparser/Cleanup.ml +++ b/cparser/Cleanup.ml @@ -65,9 +65,10 @@ let rec add_exp e = | EBinop(op, e1, e2, ty) -> add_exp e1; add_exp e2 | EConditional(e1, e2, e3) -> add_exp e1; add_exp e2; add_exp e3 | ECast(ty, e1) -> add_typ ty; add_exp e1 + | ECompound(ty, ie) -> add_typ ty; add_init ie | ECall(e1, el) -> add_exp e1; List.iter add_exp el -let rec add_init = function +and add_init = function | Init_single e -> add_exp e | Init_array il -> List.iter add_init il | Init_struct(id, il) -> addref id; List.iter (fun (_, i) -> add_init i) il |