Renamed annots into contracts. Preparing for syntax extension
- Removed the kind2 file (parser/lexer/types)- Cleaned a little bit our parser: removal of old prelude constructs
updated luster lexer ??
corrected kind parsing
Tentative to rely on Kind parser for contracts
Produce condition coverage for basic boolean expressions. To be improved with a simpler condition.
[lustrec/mcdc/ improved the MCDC output
Basic library printers moved into backend specific printer files
Further restructuring:- arrow.ml* to define basic builder for arrow (node, name, ...)- machine_code_common similar to corelang but for machine_code (printers, some builders, ...)- machine_code restricted to the translatation from normalized nodes to machines
MLI for normalization and machine_code.Structs defining machines are now in machine_code_types
- Makefile: solved dependency problem when compiling include lusi- Renamed type declarations as lustre_types and machine_code_types
Merge branch 'unstable' of https://cavale.enseeiht.fr/git/lustrec into unstable
Updated TODOChanged selection of files in odocl
Recursive resolution of dependencies
Ongoing work on salsa: introduce slicing of expr
[lustresf] work in progress. Added global env with initial values
Conditional activation of machine type plugin. currently a little buggy. Shall be desactivated.
Updated Salsa plugin to latest version of Salsa.Some issues wrt machine type features.Work in progress
Solved issue with typing of enumerated types
[general] large modification: added machine types, a second typing phase dealing with machine types (eg uint8) typing was transformed as a functor and parametrized by basic types (int/real/bool) it can also be applied multiple times on the same program
[lustret] improved enumeration of mutants
[lustret] When generating MC/DC conditions, produce them as EMF XML output
Type issue Bytes vs string
[lustret] More effective mutants generation Solved the misrenaming of imported nodes (eg int_to_real)
[main] node locals are now sorted according to their dependencies wrt clocks. The produced lustre node with types shall now be compilable
[main] cleaned superfluous empty line in generated lustre output
[main] enum typedef in C use the original lustre filename as identifier. This commit cleans the filename to remove dots.
[mutations] solved issues with - mutations that could not be performed (ie. changing an integer constants when no integer constant appear in the program) - infinite computation of mutants, because of unproper randomization.
No existing input file returns a 1 error code
[stateflow] some progress, linking the parsed json to lustrec engine. Some variables are not yet typed. To investigate ...
[general] adding more entry rules for lustre parser to extract expressions, vdecl_list and statement list
[global] reordered local vars, keeping the declared ones before the others. Was mandatory for clocked expressions in compiled automata.
[salsa] cleaning verbose logs
[general] Refactor get_node_eqs to produce (eqs, auts) with automatons
Forcing mpfr status when -real mpfr asked. Default precision is 100 bits.
[lustresf] lustresf targets are optional in Makefiles (see configure.ac)
Merge branch 'unstable-merge' into unstable
[lustresf] use Unix package
[lustresf] add Program constructor in model examples + sf_sem
[JSON] remove pretty-printing functions declarations in cPS_transformer
[lustresf] refactoring automata generation using Automata.ml functions
simple conflict when merging unstable and json-parser
[general] print types before nodes in lustre output
typo in src/Makefile.in
[lustresf] Some progress: automaton compiles but not when preprocessed
[EMF] Less verbose
[MCDC] Solved some issues and transformed the code from iterators to fold
[lustret] bug solved in file path
[lustret] mutation report is create in initial folder
[lustret] Improved mutation with json traceability
New function in Location to access to line number
Moved stage1 in separate file: it is shared among binaries
[EMF] adding original name field in the JSON
[EMF] Added the reset signal (the every argument) as input to the JSON struct
Solving a warning with ocaml 4.04 and uppercase_ascii. Provides backward compatibility for 4.02
Issue with clocked expressions. Now handled throught a local branch, ie. a single action block in Simulink
Missing last fprintf @. in the lustre output
json-parser: correct parser for regex for real variables with e|E
json-parser: add test for real variable with e|E
json-parser: correct bug on real variables value
json-parser: add string_of_XXX functions for assertions
json-parser: test exception for variables
json-parser: switch arguments for assert_equal (expected/actual)
json-parser: use JSON_parse_error exception
json-parser: more tests with single variables
json-parser: change variables names in tests
json-parser: add test for boolean variable true
json-parser: refactor first test
json-parser: first unit test for JSON parser (variables)
json-parser: prepare tests in Makefiles and _tags.in
json-parser: clean packages and _tags.in
json-parser: replace assert with exceptions
json-parser: clean files names and directories
json-parser: use Logs and Cmdliner librairies
solved bug 56: missing last node in generated lusi
clean _tags.in for YoJSON package
json-parser: remove Const_bool and use Const_tag
parser-json: clean main program + add pp for vars
parser-json: correct parsing of real constants for variables
parser-json: add variables in parsing
parser-json: final version of parser with new types
minor changes in _tags.in
TMerge branch 'unstable' into json-parser
bug correction: each var_decl must be unique and not shared as a global var
[lustresf]: tuple of false values for initial state
A fresh option to print with declared types instead of inferred ones
parser-json: first steps to integrate JSON parser
lustresf: Better construction of lustre ast. Still more work to be done.
Even prettier pretty printing. Is it even possible to improve?
Moved stateflow tool in src/toolUpdated the makefile to compile lustresfNot working yet
C backend: solved the issue of long name in generated binaries.
Normalization: force normalization of "every" arguments
first solution to address very large identifiers in node names, logs, and generated binaries
[EMF] improved feedback on reset calls
Merge branch 'dynamic_inlining' into unstable
First working version of algebraic loop resolution. Disabled by default.
[EMF} missing brace