diff --git a/convert.ml b/convert.ml index 7aa2981ebaabe65be1ecf6227001017fa0aa6a03..2e2e262525f62c023c894fe6cb9c79937dab29df 100644 --- a/convert.ml +++ b/convert.ml @@ -526,7 +526,7 @@ let mk_compound_init env lv typ init = { expr_loc = def.expr_loc; expr_node = BINARY(ASSIGN,lv,def)}, def.expr_loc) :: acc - | NO_INIT -> NOP loc :: acc + | NO_INIT -> NOP (None, loc) :: acc | COMPOUND_INIT l -> (match typ.plain_type with | Array { subtype } -> @@ -571,7 +571,7 @@ let mk_compound_init env lv typ init = let computation_or_nop loc exp = match exp.expr_node with - | NOTHING -> NOP loc + | NOTHING -> NOP (None, loc) | _ -> COMPUTATION(exp,loc) let preserved_returned_object aux e = @@ -2250,7 +2250,7 @@ and convert_statement env st does_remove_virtual = let<> UpdatedCurrentLoc = cloc in let raw, env = match st with - | Nop _ -> NOP (cloc), env + | Nop _ -> NOP (None, cloc), env | Code_annot (_,annot) -> let env, c_annot = Convert_acsl.convert_code_annot env annot in CODE_ANNOT(c_annot,cloc), env @@ -2270,7 +2270,7 @@ and convert_statement env st does_remove_virtual = in add_temps aux (COMPUTATION(e,cloc)), env | VirtualExpression (_,e) -> - if does_remove_virtual then NOP cloc, env + if does_remove_virtual then NOP (None, cloc), env else let env, aux, e = convert_full_expr env e does_remove_virtual in add_temps aux (COMPUTATION(e,cloc)), env @@ -2293,7 +2293,7 @@ and convert_statement env st does_remove_virtual = in add_temps aux (IF(cond,true_action,false_action,cloc)), env | Label(_,lab) -> - let stmt = make_stmt env (NOP (cloc)) in + let stmt = make_stmt env (NOP (None, cloc)) in LABEL(lab,stmt,cloc), env | Goto(_,lab) -> GOTO(lab,cloc), env @@ -2468,7 +2468,7 @@ and convert_stmt_block env b does_remove_virtual = let stmts, env = convert_stmt_list env b does_remove_virtual in let stmt = match stmts with - [] -> make_stmt env (NOP cloc) + [] -> make_stmt env (NOP (None, cloc)) | [ a ] -> a | l -> make_block_stmt env l in @@ -3146,7 +3146,7 @@ and create_assign_stmt_type op env typ dst src = stmt, defs, Convert_env.unscope lenv env | Array { dimension = None} -> (* GNU extension. Treat it as a an empty field. *) - make_stmt env (NOP loc), [], env + make_stmt env (NOP (None, loc)), [], env | Union (s,t) -> (* TODO: check whether the union has a user-provided copy constructor. Otherwise, the implicit default is to copy the object representation @@ -3169,7 +3169,7 @@ and create_assign_stmt_type op env typ dst src = (* No initialization is performed by default constructor, cf 12.6.2§8. No destructor call for variant members, cf 12.4§7. *) - make_stmt env (NOP loc), [], env + make_stmt env (NOP (None, loc)), [], env | Struct (s,t) -> let class_name = Convert_env.typedef_normalize env s t in implicit_op_call op env true class_name dst src @@ -3203,7 +3203,7 @@ let create_default_constructor env most_derived class_name = let class_field dst _ = [ dst ] in (* TODO: add in intermediate_format.ast information about initializer of corresponding fields. See 12.6.2§8 *) - let plain_field _ _ = make_stmt env (NOP loc) in + let plain_field _ _ = make_stmt env (NOP (None, loc)) in let kind most_derived = FKConstructor most_derived in let name _ (qname, tkind) = Cxx_utils.meth_name qname tkind qname.decl_name @@ -3385,7 +3385,7 @@ let create_destructor env most_derived class_name = else None in let class_field dst _ = [ dst ] in - let plain_field _ _ = make_stmt env (NOP loc) in + let plain_field _ _ = make_stmt env (NOP (None, loc)) in let kind most_derived = FKDestructor most_derived in let return () = make_stmt env (RETURN ({ expr_loc = loc; expr_node = NOTHING}, loc)) diff --git a/doc/userman/FCLANG_VERSION b/doc/userman/FCLANG_VERSION index a9c195da9514ee9593eed998682bd7c2d0d51706..efd25b2b56c74c4bb7b31f237b3e0d967bb9c05b 100644 --- a/doc/userman/FCLANG_VERSION +++ b/doc/userman/FCLANG_VERSION @@ -1 +1 @@ -0.0.16+dev +0.0.17~beta diff --git a/doc/userman/FC_VERSION b/doc/userman/FC_VERSION index 6630b191eeab90f86c2ff9d96fcf0f432831e44e..e5b91ee00b743d168313a0cfb2e41ad0d3a42883 100644 --- a/doc/userman/FC_VERSION +++ b/doc/userman/FC_VERSION @@ -1 +1 @@ -29.0+dev +30.0~beta diff --git a/doc/userman/FC_VERSION_NAME b/doc/userman/FC_VERSION_NAME index 6ef0d73b2e61dce4f0efb74239694c393c8113d0..435882f7ccab4ea4bc783d64850823f4182faa80 100644 --- a/doc/userman/FC_VERSION_NAME +++ b/doc/userman/FC_VERSION_NAME @@ -1 +1 @@ -Copper +Zinc diff --git a/dune-project b/dune-project index c043c5c81087764d9a2307249bcedc131a6262af..9a763ce1eb4477f22a57a106fd46feba50f2bcda 100644 --- a/dune-project +++ b/dune-project @@ -30,7 +30,7 @@ (package (name frama-clang) (depends ("dune" (<> 3.13.0)) ; performance problem - ("frama-c" (and (>= 29.0~) (< 30.0~))) + ("frama-c" (and (>= 30.0~) (< 31.0~))) ("zarith" (>= 1.5)) "camlp5" "camlp-streams" diff --git a/frama-clang.opam b/frama-clang.opam index 6a03c4908d8fb150b45a45a9d7b465a3f78d097c..a8fa5d9f55958d706d15931f66ceeda329bbf87d 100644 --- a/frama-clang.opam +++ b/frama-clang.opam @@ -30,7 +30,7 @@ build: [ ["dune" "install" "-p" name "--create-install-files" name] ] name: "frama-clang" -version: "0.0.16+dev" +version: "0.0.17~beta" synopsis: "Frama-C plug-in based on Clang for parsing C++ files" description: """ This Frama-C plug-in parse C++ files that may contain ACSL++ annotations. diff --git a/frama-clang.opam.template b/frama-clang.opam.template index ae437f61c2dfd27b09305631ac67bad31b23fa34..1e9dbc7800e4337208a4f1cb2530787b96bec73f 100644 --- a/frama-clang.opam.template +++ b/frama-clang.opam.template @@ -1,5 +1,5 @@ name: "frama-clang" -version: "0.0.16+dev" +version: "0.0.17~beta" synopsis: "Frama-C plug-in based on Clang for parsing C++ files" description: """ This Frama-C plug-in parse C++ files that may contain ACSL++ annotations. diff --git a/nix/frama-clang-manual.nix b/nix/frama-clang-manual.nix index c40704f2f67eca15c7e84a72f69d4277f2b82e78..30b6b5633b7ff49330ee24bb5a2635fb178056eb 100644 --- a/nix/frama-clang-manual.nix +++ b/nix/frama-clang-manual.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { pname = "manual"; - version = frama-clang.version; + version = lib.strings.replaceStrings ["~"] ["-"] frama-clang.version; build_dir = frama-c.build_dir + "/dir.tar"; srcs = diff --git a/nix/frama-clang.nix b/nix/frama-clang.nix index 37cb3a697d40490c3f8a856992544be151c20245..b739953ddd392ef887850b557f3eaf39043424bc 100644 --- a/nix/frama-clang.nix +++ b/nix/frama-clang.nix @@ -25,12 +25,11 @@ mk_plugin { dontUseCmakeConfigure=true; # set frama-clang's version number version = - lib.strings.replaceStrings ["~"] ["-"] - (lib.strings.removePrefix "version: \"" - (lib.strings.removeSuffix "\"" - (lib.lists.findFirst - (x: lib.strings.hasPrefix "version:" x) - "" - (lib.strings.splitString "\n" - (builtins.readFile ../frama-clang.opam.template))))); + lib.strings.removePrefix "version: \"" + (lib.strings.removeSuffix "\"" + (lib.lists.findFirst + (x: lib.strings.hasPrefix "version:" x) + "" + (lib.strings.splitString "\n" + (builtins.readFile ../frama-clang.opam.template)))); }