diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index adc50617d82bd56443b06f145ad8c8a8848dcd25..65586e0f0fc56fd39fc130fbfc7c36cb0ee9ffe2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,7 +5,7 @@ stages: frama-c-external: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c-external --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c-external --base-branch stable/phosphorus tags: except: - tags @@ -13,23 +13,23 @@ frama-c-external: frama-c: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c tags: except: - tags - + frama-c-ocaml-4.03: stage: distrib_and_compatibility script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --ocaml 4.03 --camlp4 4.03 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --ocaml 4.03 --camlp4 4.03 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c tags: except: - tags - + frama-c-ocaml-4.04: stage: distrib_and_compatibility script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --ocaml 4.04 --camlp4 4.04 --lablgtk 4bbd5cf1990aa8b775cf247fbfe5be321e13cc61 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --ocaml 4.04 --camlp4 4.04 --lablgtk 4bbd5cf1990aa8b775cf247fbfe5be321e13cc61 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c tags: except: - tags @@ -37,7 +37,7 @@ frama-c-ocaml-4.04: frama-c-ocaml-4.05: stage: distrib_and_compatibility script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --ocaml 4.05 --camlp4 4.05 --lablgtk 4bbd5cf1990aa8b775cf247fbfe5be321e13cc61 --camomile 3f4d657d50c17213f3338ca75efb30d728704df3 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --ocaml 4.05 --camlp4 4.05 --lablgtk 4bbd5cf1990aa8b775cf247fbfe5be321e13cc61 --camomile 3f4d657d50c17213f3338ca75efb30d728704df3 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c tags: except: - tags @@ -47,7 +47,7 @@ frama-c-ocaml-4.05: frama-c-internal: stage: distrib_and_compatibility script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c-internal + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c-internal tags: only: - master @@ -58,7 +58,7 @@ frama-c-internal: frama-c-distrib: stage: distrib_and_compatibility script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c-distrib + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME frama-c-distrib tags: except: - tags @@ -67,15 +67,15 @@ frama-c-distrib: Genassigns: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME Genassigns --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME Genassigns --base-branch stable/phosphorus tags: except: - tags - + Mthread: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME Mthread --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME Mthread --base-branch stable/phosphorus tags: except: - tags @@ -83,7 +83,7 @@ Mthread: a3export: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME a3export --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME a3export --base-branch stable/phosphorus tags: except: - tags @@ -91,7 +91,7 @@ a3export: PathCrawler: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME PathCrawler --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME PathCrawler --base-branch stable/phosphorus tags: except: - tags @@ -99,7 +99,7 @@ PathCrawler: Security: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME Security --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME Security --base-branch stable/phosphorus tags: except: - tags @@ -107,7 +107,7 @@ Security: E-ACSL: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME E-ACSL --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME E-ACSL --base-branch stable/phosphorus tags: except: - tags @@ -116,7 +116,15 @@ E-ACSL: context-from-precondition: stage: frama_c_and_plugins script: - - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --rootfs 1 --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME context-from-precondition --base-branch stable/phosphorus + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME context-from-precondition --base-branch stable/phosphorus + tags: + except: + - tags + +ACSL-importer: + stage: frama_c_and_plugins + script: + - ~oci/oci/bin/bf_client.native run --socket ~oci/data/oci-data/oci.socket --frama-c $CI_BUILD_REF --branch $CI_BUILD_REF_NAME ACSL-importer --base-branch stable/phosphorus tags: except: - tags @@ -126,4 +134,4 @@ context-from-precondition: # - "echo \"Parameters: commit is $CI_BUILD_REF, branch is $CI_BUILD_REF_NAME\"" # tags: # except: -# - tags \ No newline at end of file +# - tags diff --git a/Changelog b/Changelog index f986d8ac476ce16e1a099ec44266b0b82dff93d7..42e2b5c84f07b319d143b6f137163828744eda17 100644 --- a/Changelog +++ b/Changelog @@ -22,6 +22,8 @@ Open Source Release <next-release> Open Source Release Phosphorus-20170501 ####################################### +-* Kernel [2017/05/08] Fix various typos in source code and user messages. + Patch by Debian. Fixes #2323 -* Eva [2017/05/08] Fix widening in the gauges domain, in particular with nested loops and pointers that change base address through iterations diff --git a/Makefile b/Makefile index 0d834964c898ce359a8730c85a81574264e2c90a..e98014520c585569a078c9a842b00b0b929c633d 100644 --- a/Makefile +++ b/Makefile @@ -231,6 +231,7 @@ DISTRIB_FILES:=\ VERSION $(wildcard licenses/*) \ $(LIBC_FILES) \ $(wildcard share/emacs/*.el) share/autocomplete_frama-c \ + share/_frama-c \ share/configure.ac \ share/Makefile.config.in share/Makefile.common \ share/Makefile.generic \ @@ -1531,7 +1532,7 @@ install:: install-lib $(wildcard share/*.c share/*.h) \ share/Makefile.dynamic share/Makefile.plugin.template share/Makefile.kernel \ share/Makefile.config share/Makefile.common share/Makefile.generic \ - share/configure.ac share/autocomplete_frama-c \ + share/configure.ac share/autocomplete_frama-c share/_frama-c \ $(FRAMAC_DATADIR) $(MKDIR) $(FRAMAC_DATADIR)/emacs $(CP) $(wildcard share/emacs/*.el) $(FRAMAC_DATADIR)/emacs diff --git a/configure.in b/configure.in index e69581569f00cf14de9621a8f67de78134ff186c..2144a54b58164afe13af258597cb3b71a0c6c87c 100644 --- a/configure.in +++ b/configure.in @@ -883,7 +883,8 @@ if ($OCAMLOPT -shared -linkall -o test_dynlink.cmxs test_dynlink.ml) \ then AC_MSG_RESULT([native dynlink works fine. Great.]) else - AC_MSG_ERROR([native dynlink does not work.]) + AC_MSG_WARN([Native dynlink does not work, disabling native compilation.]) + OCAMLBEST=byte fi rm -f test_dynlink.* diff --git a/headers/headache_config.txt b/headers/headache_config.txt index c3cebe95c2de5206b7d59f12ae408cba1763a50b..46c5c602eb3359a579d4305ad5703219d670a13a 100644 --- a/headers/headache_config.txt +++ b/headers/headache_config.txt @@ -34,6 +34,8 @@ ################# | ".*\.sh" -> frame open:"#" line:"#" close:"#" | "autocomplete_frama-c" -> frame open: "#" line: "#" close: "#" +| "_frama-c" -> frame open: "#" line: "#" close: "#" +| ".*_frama-c" -> skip match:"#compdef.*" ################ # Perl scripts # diff --git a/headers/header_spec.txt b/headers/header_spec.txt index 8cda3ea0889caae39c052bf311d92408687ca9d7..6107763c0778154fd54bf1bc3898b7bb4b9056e7 100644 --- a/headers/header_spec.txt +++ b/headers/header_spec.txt @@ -108,6 +108,7 @@ opam/opam: .ignore ptests/.gitignore: .ignore ptests/.merlin: .ignore ptests/ptests.ml: CEA_LGPL +share/_frama-c: CEA_LGPL share/autocomplete_frama-c: CEA_LGPL share/Makefile.clean: CEA_LGPL share/Makefile.common: CEA_LGPL diff --git a/man/frama-c.1 b/man/frama-c.1 index fac74bcdbeb0706d72c9df0349fbf55c2402c8d4..5801d7b53d3c22890ac3bb6896b587324ed6670f 100644 --- a/man/frama-c.1 +++ b/man/frama-c.1 @@ -404,14 +404,14 @@ alias of .TP .B -print-plugin-path outputs the directory where Frama-C searches its plugins -(can be overidden by the +(can be overridden by the .B FRAMAC_PLUGIN variable and the .B -add-path option) .TP .B -print-share-path -outputs the directory where Frama-C stores its data (can be overidden by the +outputs the directory where Frama-C stores its data (can be overridden by the .B FRAMAC_SHARE variable) .TP diff --git a/share/Makefile.dynamic b/share/Makefile.dynamic index fbdd26a5cf855d1d08dc78544a5f998b59ae1103..c12e946d6137fab54f399800628fc9c288fbf0c7 100644 --- a/share/Makefile.dynamic +++ b/share/Makefile.dynamic @@ -188,14 +188,18 @@ $(eval $(call include_generic_plugin_Makefile,$(PLUGIN_NAME))) TARGETS := $(TARGET_META) $(TARGET_CMI) TARGETS_TOP := $(TARGET_TOP_CMO) $(TARGET_TOP_CMX) \ $(TARGET_TOP_CMA) $(TARGET_TOP_CMXS) -TARGETS_GUI := $(TARGET_GUI_CMI) $(TARGET_GUI_CMO) \ - $(TARGET_GUI_CMX) $(TARGET_GUI_CMXS) +TARGETS_GUI_BYTE := $(TARGET_GUI_CMI) $(TARGET_GUI_CMO) +TARGETS_GUI := $(TARGETS_GUI_BYTE) $(TARGET_GUI_CMX) $(TARGET_GUI_CMXS) TARGETS_BYTE:= $(TARGET_META) $(TARGET_CMI) $(TARGET_TOP_CMO) $(TARGET_TOP_CMA) TARGETS_OPT:= $(TARGET_META) $(TARGET_CMI) $(TARGET_TOP_CMX) $(TARGET_TOP_CMXS) byte:: $(TARGETS_BYTE) opt:: $(TARGETS_OPT) +ifeq ($(OCAMLBEST),byte) +gui:: $(TARGETS_GUI_BYTE) +else gui:: $(TARGETS_GUI) +endif # do not define additional targets if you come from the Frama-C Makefile ifneq ($(FRAMAC_INTERNAL),yes) diff --git a/share/_frama-c b/share/_frama-c index 9ae7aae8e22a73956bacc29136048a19daae1e28..51ac788669e9b56fb1aab86996a02cc53df5eb2f 100644 --- a/share/_frama-c +++ b/share/_frama-c @@ -1,4 +1,25 @@ #compdef frama-c frama-c-gui frama-c.byte frama-c-gui.byte +########################################################################## +# # +# This file is part of Frama-C. # +# # +# Copyright (C) 2007-2017 # +# CEA (Commissariat à l'énergie atomique et aux énergies # +# alternatives) # +# # +# you can redistribute it and/or modify it under the terms of the GNU # +# Lesser General Public License as published by the Free Software # +# Foundation, version 2.1. # +# # +# It is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU Lesser General Public License for more details. # +# # +# See the GNU Lesser General Public License version 2.1 # +# for more details (enclosed in the file licenses/LGPLv2.1). # +# # +########################################################################## # zsh completion for Frama-C # ========================== diff --git a/src/kernel_services/ast_data/cil_types.mli b/src/kernel_services/ast_data/cil_types.mli index c23460a1440d8431d65e576457847acd11496968..1c789137ad35794b5831805a830d2d30d3a7403e 100644 --- a/src/kernel_services/ast_data/cil_types.mli +++ b/src/kernel_services/ast_data/cil_types.mli @@ -543,7 +543,7 @@ and varinfo = { (** - For global variables, true iff the variable or function is defined in the file. - - For local variables, true iff the variable is explicitely initialized + - For local variables, true iff the variable is explicitly initialized at declaration time. - Unused for formals variables and logic variables. *) diff --git a/src/plugins/scope/dpds_gui.ml b/src/plugins/scope/dpds_gui.ml index c7b2a0164ff1fefdaf004ebf2250f3a09ad86324..82cb8680aff3abfa150886c472c307d17642bb08 100644 --- a/src/plugins/scope/dpds_gui.ml +++ b/src/plugins/scope/dpds_gui.ml @@ -379,7 +379,7 @@ let help (main_ui:Design.main_window_extension_points) = ^"and the data is the one that is selected if any, " ^"or it can be given via a popup.\n" ^"\tIf the text given in the popup is empty, or 'Cancel' is chosen, " - ^"the selection of the command is reseted."); + ^"the selection of the command is reset."); add (ShowDef.help); add (Zones.help); add (DataScope.help); diff --git a/src/plugins/value/domains/gauges/gauges_domain.ml b/src/plugins/value/domains/gauges/gauges_domain.ml index 20b772b14830e256932201d5220b015dc6acb1bd..5ccfc99b13b65c355737c7265fa916cc0def1161 100644 --- a/src/plugins/value/domains/gauges/gauges_domain.ml +++ b/src/plugins/value/domains/gauges/gauges_domain.ml @@ -460,11 +460,11 @@ module G = struct (* Widen [i1] and [i2]. The number of iterations is widened only if [widen_nb] holds. *) - let widen stmt ~widen_nb i1 i2 = + let widen _stmt ~widen_nb i1 i2 = let nb = if widen_nb then let threshold = - if false then LoopAnalysis.Loop_analysis.get_bounds stmt else None + None (* LoopAnalysis.Loop_analysis.get_bounds _stmt *) in let threshold = Extlib.opt_map Integer.of_int threshold in let (min, max as w) = Bounds.widen ?threshold i1.nb i2.nb in diff --git a/src/plugins/wp/GuiProver.ml b/src/plugins/wp/GuiProver.ml index 6706138076b9570ca9539dc1126a1857ce5d485e..3804a1e996bbc927e4774b5a595496a98580ed2d 100644 --- a/src/plugins/wp/GuiProver.ml +++ b/src/plugins/wp/GuiProver.ml @@ -165,7 +165,7 @@ class prover ~(console:Wtext.text) ~prover = Pretty_utils.ksfprintf self#set_label "%a" VCS.pp_prover prover ; | VCS.Computing signal -> self#set_status `EXECUTE ; - self#set_action ~tooltip:"Interrrupt Prover" ~icon:`STOP ~callback:signal () ; + self#set_action ~tooltip:"Interrupt Prover" ~icon:`STOP ~callback:signal () ; Pretty_utils.ksfprintf self#set_label "%a (...)" VCS.pp_prover prover ; | VCS.Valid | VCS.Checked -> self#set_status ok_status ; diff --git a/src/plugins/wp/Strategy.ml b/src/plugins/wp/Strategy.ml index 008b61cad7543c14498751ec9b0f1dbea76d5855..d4a01882c615a4cdc8e4a54a7703598dd4e1264e 100644 --- a/src/plugins/wp/Strategy.ml +++ b/src/plugins/wp/Strategy.ml @@ -131,7 +131,7 @@ let registry = ref Tmap.empty let register s = let id = s#id in if Tmap.mem id !registry then - Wp_parameters.error "Strategy #%s already registered (skiped)" id + Wp_parameters.error "Strategy #%s already registered (skipped)" id else registry := Tmap.add id (s :> heuristic) !registry diff --git a/src/plugins/wp/Tactical.ml b/src/plugins/wp/Tactical.ml index 1afdf92f09711111138d6e5c8c4f0ed914d44be8..273f82cbc9199dd1430524088b2d63524adf9cdc 100644 --- a/src/plugins/wp/Tactical.ml +++ b/src/plugins/wp/Tactical.ml @@ -53,7 +53,7 @@ let rec insert_group cc = function let add_composer (c : #composer) = let id = c#id in if Tmap.mem id !composers then - Wp_parameters.error "Composer #%s already registered (skiped)" id + Wp_parameters.error "Composer #%s already registered (skipped)" id else begin composers := Tmap.add id (c :> composer) !composers ; @@ -404,7 +404,7 @@ let tacticals = ref Tmap.empty let register t = let id = t#id in if Tmap.mem id !tacticals then - Wp_parameters.error "Tactical #%s already registered (skiped)" id + Wp_parameters.error "Tactical #%s already registered (skipped)" id else tacticals := Tmap.add id (t :> t) !tacticals diff --git a/src/plugins/wp/wp_parameters.ml b/src/plugins/wp/wp_parameters.ml index 1fb99f9c876c78252f1d6ecbfefdfdccfa4fc8e5..82a4998a0ec110ba58fe86dbac441a3884999014 100644 --- a/src/plugins/wp/wp_parameters.ml +++ b/src/plugins/wp/wp_parameters.ml @@ -276,7 +276,7 @@ module SplitDepth = let option_name = "-wp-split-depth" let default = 0 let arg_name = "p" - let help = "Set depth of exploration for spliting conjunctions into sub-goals.\n\ + let help = "Set depth of exploration for splitting conjunctions into sub-goals.\n\ Value `-1` means an unlimited depth." end) @@ -681,7 +681,7 @@ module TruncPropIdFileName = let option_name = "-wp-filename-truncation" let default = 60 let arg_name = "n" - let help = "Truncate basename of proof obligation files after <n> characters. Since numbers can be added as suffixes to make theses names unique, filename lengths can be highter to <n>. No truncation is performed when the value equals to zero (defaut: 60)." + let help = "Truncate basename of proof obligation files after <n> characters. Since numbers can be added as suffixes to make theses names unique, filename lengths can be highter to <n>. No truncation is performed when the value equals to zero (default: 60)." end)