diff --git a/Changelog b/Changelog index 85dedd77b9acfa5cd96c762584d6c5689e437aed..68ec669e4d8cb47b6a27e7f1bed4c66813d86e48 100644 --- a/Changelog +++ b/Changelog @@ -18,6 +18,8 @@ Open Source Release <next-release> ############################################################################### +o! Kernel [2024-12-20] Remove Cabs.SEQUENCE statement + ############################################################################### Open Source Release 30.0 (Zinc) ############################################################################### diff --git a/src/kernel_internals/typing/cabs2cil.ml b/src/kernel_internals/typing/cabs2cil.ml index 68fdd419ca5d5c00cecda14d658c13751e0edb5e..2624f808f3295b20ddd30c873b30b3d85b310f27 100644 --- a/src/kernel_internals/typing/cabs2cil.ml +++ b/src/kernel_internals/typing/cabs2cil.ml @@ -7368,7 +7368,6 @@ and doExp local_env let findLastComputation = function s :: _ -> let rec findLast st = match st.stmt_node with - | Cabs.SEQUENCE (_, s, _) -> findLast s | CASE (_, s, _) -> findLast s | CASERANGE (_, _, s, _) -> findLast s | LABEL (_, s, _) -> findLast s @@ -9977,11 +9976,6 @@ and doStatement local_env (s : Cabs.statement) : chunk = let res = s2c (mkStmt ~ghost ~valid_sid (Block b)) in { res with cases = c.cases } - | Cabs.SEQUENCE (s1, s2, _) -> - let c1 = doStatement local_env s1 in - let c2 = doStatement local_env s2 in - c1 @@@ (c2, ghost) - | Cabs.IF(e, st, sf, _) -> let st' = doStatement local_env st in let sf' = doStatement local_env sf in diff --git a/src/kernel_services/ast_printing/cabs_debug.ml b/src/kernel_services/ast_printing/cabs_debug.ml index a0c46854694f05d1d36167f224f629b52a582566..a4de9e3fe929b11a6b1b445fbda432941fb36595 100644 --- a/src/kernel_services/ast_printing/cabs_debug.ml +++ b/src/kernel_services/ast_printing/cabs_debug.ml @@ -209,8 +209,6 @@ and pp_raw_stmt fmt = function | BLOCK (bl, loc1, loc2) -> fprintf fmt "@[<hov 2>BLOCK loc1(%a), loc2(%a) {%a} @]" pp_cabsloc loc1 pp_cabsloc loc2 pp_block bl - | SEQUENCE (stmt1, stmt2, loc) -> - fprintf fmt "@[<hov 2>SEQUENCE stmt(%a), stmt(%a), loc(%a)@]" pp_stmt stmt1 pp_stmt stmt2 pp_cabsloc loc | IF (exp, stmt1, stmt2, loc) -> fprintf fmt "@[<hov 2>IF cond(%a), stmt(%a), stmt(%a), loc(%a)@]" pp_exp exp pp_stmt stmt1 pp_stmt stmt2 pp_cabsloc loc diff --git a/src/kernel_services/ast_printing/cprint.ml b/src/kernel_services/ast_printing/cprint.ml index 726864b24c343e33238b37d8701b6025d170fc30..8da3a7d6b25bb701ddb6f56062cf3e1824a4569d 100644 --- a/src/kernel_services/ast_printing/cprint.ml +++ b/src/kernel_services/ast_printing/cprint.ml @@ -435,8 +435,6 @@ and print_statement fmt stat = | NOP _ -> pp_print_string fmt ";" | COMPUTATION (exp,_) -> fprintf fmt "%a;" print_expression exp | BLOCK (blk, _,_) -> print_block fmt blk - | SEQUENCE (s1, s2,_) -> - fprintf fmt "%a;@ %a" print_statement s1 print_statement s2 | IF (exp, s1, s2, _) -> fprintf fmt "@[<hov 2>if@ (@[%a@])@ %a@." print_expression exp print_substatement s1; @@ -537,7 +535,6 @@ and print_block fmt blk = and print_substatement fmt stat = match stat.stmt_node with IF _ - | SEQUENCE _ | DOWHILE _ -> fprintf fmt "@ {@ @[%a@]@ }" print_statement stat | _ -> diff --git a/src/kernel_services/parsetree/cabs.ml b/src/kernel_services/parsetree/cabs.ml index 66963031273866350b44e2b1944495623ff6d928..518230655be8e52afbe85a255d63f7608e9189a6 100644 --- a/src/kernel_services/parsetree/cabs.ml +++ b/src/kernel_services/parsetree/cabs.ml @@ -199,7 +199,6 @@ and raw_statement = | NOP of attribute option * cabsloc | COMPUTATION of expression * cabsloc | BLOCK of block * cabsloc * cabsloc - | SEQUENCE of statement * statement * cabsloc | IF of expression * statement * statement * cabsloc | WHILE of loop_invariant * expression * statement * cabsloc | DOWHILE of loop_invariant * expression * statement * cabsloc diff --git a/src/kernel_services/parsetree/cabshelper.ml b/src/kernel_services/parsetree/cabshelper.ml index aaa18bc10163263b177c5293f46a3a219d51fd24..732ce601a40f19b22f7d1896dac95a03df68e7af 100644 --- a/src/kernel_services/parsetree/cabshelper.ml +++ b/src/kernel_services/parsetree/cabshelper.ml @@ -167,7 +167,6 @@ let get_statementloc (s : statement) : cabsloc = | NOP(_, loc) -> loc | COMPUTATION(_,loc) -> loc | BLOCK(_,loc,_) -> loc - | SEQUENCE(_,_,loc) -> loc | IF(_,_,_,loc) -> loc | WHILE(_,_,_,loc) -> loc | DOWHILE(_,_,_,loc) -> loc diff --git a/src/kernel_services/visitors/cabsvisit.ml b/src/kernel_services/visitors/cabsvisit.ml index ed9fa5846312b0493a04c8ec62d163c47e29c714..2ca799eab5bf4d4b798424e531bef43985c75bbb 100644 --- a/src/kernel_services/visitors/cabsvisit.ml +++ b/src/kernel_services/visitors/cabsvisit.ml @@ -292,10 +292,6 @@ and childrenStatement vis s = | BLOCK (b, l, l') -> let b' = visitCabsBlock vis b in if b' != b then {s with stmt_node = BLOCK (b', l, l')} else s - | SEQUENCE (s1, s2, l) -> - let s1' = vs l s1 in - let s2' = vs l s2 in - if s1' != s1 || s2' != s2 then {s with stmt_node = SEQUENCE (s1', s2', l)} else s | IF (e, s1, s2, l) -> let e' = ve e in let s1' = vs l s1 in diff --git a/src/plugins/metrics/metrics_cabs.ml b/src/plugins/metrics/metrics_cabs.ml index cd604b283ee4fa2b2c150f4c20f07fa18dee2c33..b928284ac8f5f53cb1cc59bed4eaf92f6d2c8cee 100644 --- a/src/plugins/metrics/metrics_cabs.ml +++ b/src/plugins/metrics/metrics_cabs.ml @@ -207,7 +207,6 @@ class metricsCabsVisitor = object(self) | COMPGOTO _ -> self#incr_both_metrics incr_gotos; | DEFINITION _ | ASM _ - | SEQUENCE _ | TRY_CATCH _ | CODE_ANNOT _ | CODE_SPEC _ -> ()); @@ -348,10 +347,6 @@ module Halstead = struct update_val_incr "{" operator_tbl.otherop_tbl; update_val_incr "}" operator_tbl.otherop_tbl; Cil.DoChildren; - | SEQUENCE _ -> - print_string "seq\n"; - update_val_incr ";" operator_tbl.otherop_tbl; - Cil.DoChildren; | IF _ -> self#add_paren (); reserved "if"; | WHILE _ -> self#add_paren (); reserved "while"; | DOWHILE _ ->