2015-03-12 |
Edouard Tisserant |
Fixed reset of current_varqualifier when generating global initializers, causin RETAIN and other option to be ORed and applied to all subsequent global variables.
|
changeset |
files
|
2015-03-09 |
mjsousa |
Do fill/narrow datatype analysis algorithm for derived_datatype_identifier_c (fixes bug related to arrays of arrays that was generating incorrect C code).
|
changeset |
files
|
2015-02-15 |
mjsousa |
Better identification of error location in some error messages.
|
changeset |
files
|
2015-02-15 |
mjsousa |
Fix bug introduced in 2014/10/19, while adding support for REF() opertors -> datatype checking was not catching datatype inconsistency errors!
|
changeset |
files
|
2015-01-22 |
mjsousa |
merge
|
changeset |
files
|
2015-01-10 |
mjsousa |
Re-write and fix the logic of SFC action modifiers.
|
changeset |
files
|
2015-01-10 |
mjsousa |
Correct the number given to actions in the #define's
|
changeset |
files
|
2015-01-16 |
mjsousa |
Do not allow constant_propagation algorithm go into infinite loop when analysing code with circular references.
|
changeset |
files
|
2015-01-16 |
mjsousa |
Do constant propagation of FBs instantiated in other FB or Programs, so that variable sized arrays can be declared in FBs too.
|
changeset |
files
|
2015-01-11 |
mjsousa |
Do constant propagation of instantiated FBs, so that variable sized arrays can be declared in FBs too.
|
changeset |
files
|
2015-01-11 |
mjsousa |
Let get_datatype_info_c handle variable sized arrays, even if constant folding is not yet done.
|
changeset |
files
|
2015-01-08 |
mjsousa |
Correctly analyse external<->global var compatibility when using variable sized arrays (TODO: does not yet work for FBs!)
|
changeset |
files
|
2014-12-30 |
mjsousa |
Add comment about bug that needs to be fixed later on.
|
changeset |
files
|
2014-12-30 |
mjsousa |
Break constant_folding_c in two classes: constant_folding_c and constant_propagation_c
|
changeset |
files
|
2014-12-30 |
mjsousa |
Add check whether the same constant var_external variable is initialised with two (or more) different constant values.
|
changeset |
files
|
2014-12-30 |
mjsousa |
Change algorithm for propagating VAR_GLOBAL constant values to corresponding VAR_EXTERNAL.
|
changeset |
files
|
2014-12-28 |
mjsousa |
Disable constant propagation again (still not working correctly)
|
changeset |
files
|
2014-12-28 |
mjsousa |
Make support for use of variables in array size declarations a command line option (off by default)
|
changeset |
files
|
2014-12-28 |
mjsousa |
Add debug_c::print(const_value_c) for printing of const values.
|
changeset |
files
|
2014-12-28 |
mjsousa |
Add is_undefined() method to const_value_c
|
changeset |
files
|
2014-12-28 |
mjsousa |
Make error message more informative.
|
changeset |
files
|
2014-12-27 |
mjsousa |
Add comments.
|
changeset |
files
|
2014-12-26 |
mjsousa |
Add checks for use of non constant value in subranges, and lower_limit > upper_limit.
|
changeset |
files
|
2014-12-26 |
mjsousa |
Fix previous commit (symtable operator[] must return a reference to the stored value!)
|
changeset |
files
|
2014-12-26 |
mjsousa |
Do constant propagation of configuration/resource variables, taking into account scope of variables.
|
changeset |
files
|
2014-12-26 |
mjsousa |
Change dsymbtable_c -> use design pattern used by C++ standard library (STL)
|
changeset |
files
|
2014-12-26 |
mjsousa |
Change symbtable_c -> use design pattern used by C++ standard library (STL)
|
changeset |
files
|
2014-12-26 |
mjsousa |
Remove debugging code left in by mistake.
|
changeset |
files
|
2014-12-26 |
mjsousa |
Do constant propagation inside Configurations and Resources (required for support of extension: array [1..max] OF int); (Resources is still buggy)
|
changeset |
files
|
2014-12-25 |
mjsousa |
Do constant folding of default initial values of datatypes.
|
changeset |
files
|
2014-12-24 |
mjsousa |
Do constant propagation to symbolic_variables, and correctly handle constant folding and propagation of variable declarations.
|
changeset |
files
|
2014-12-17 |
mjsousa |
When generating C code, use the const_value of a symbolic_variable when it is used in a subrange.
|
changeset |
files
|
2014-12-17 |
mjsousa |
Small code re-organization of how const values are stored in symbol_c (can now be accessed through member functions, instead of macros)
|
changeset |
files
|
2014-12-14 |
mjsousa |
Fix bugs introduced in previous commit (once again do constant folding of all literals in type declarations)
|
changeset |
files
|
2014-12-14 |
mjsousa |
Do constant folding of variable's initial value (allows correct C code generation with variables in the subrange of an array declaration: ARRAY [1..max] of INT).
|
changeset |
files
|
2014-12-10 |
mjsousa |
Delete un-used declaration.
|
changeset |
files
|
2014-12-10 |
mjsousa |
merge
|
changeset |
files
|
2014-11-22 |
mjsousa |
Allow variables to be used when declaring the dimension of an array.
|
changeset |
files
|
2014-12-06 |
mjsousa |
Fix C code generation when forward references (-p command line option) is on.
|
changeset |
files
|
2014-12-06 |
mjsousa |
Add a new pou_typename_c object to the AST to store references to previously declared Functions, FB, and Programs.
|
changeset |
files
|
2014-11-30 |
mjsousa |
Delete unused file.
|
changeset |
files
|
2014-11-30 |
mjsousa |
Make use of pre-parser a command line option.
|
changeset |
files
|
2014-11-30 |
mjsousa |
Fix AST generated by parsing with preparsing switched OFF (typo in array datatypes, and fix parsing of POUs).
|
changeset |
files
|
2014-11-29 |
mjsousa |
Fix AST generated by parsing with preparsing switched on, and allow parsing to work with preparsing off.
|
changeset |
files
|
2014-11-29 |
mjsousa |
Fix bug introduced when adding support for relaxed datatype model: change derived_datatype_identifier_c to identifier_c when used as an identifier
|
changeset |
files
|
2014-11-29 |
mjsousa |
Add a pre-parsing phase to stage1_2 (allows source code that references POUs and datatypes before they are declared)
|
changeset |
files
|
2014-11-29 |
mjsousa |
Comment out unused and buggy code.
|
changeset |
files
|
2014-11-27 |
mjsousa |
Update the comments in source code.
|
changeset |
files
|
2014-11-26 |
mjsousa |
Fix bug introduced when adding support for relaxed datatype model. Code cleanup.
|
changeset |
files
|
2014-11-23 |
mjsousa |
Fix main state machine in flex (states were being pushed without being poped from the stack)
|
changeset |
files
|
2014-11-16 |
mjsousa |
merge
|
changeset |
files
|
2014-11-16 |
mjsousa |
Make the relaxed datatype model a runtime option (off by default)
|
changeset |
files
|
2014-11-16 |
mjsousa |
Add support for relaxed datatype model for array datatypes.
|
changeset |
files
|
2014-11-09 |
mjsousa |
fix bug introduced a few commits ago: do not print the first char ('%') of a direct_variable_c (e.g. skip % in %IW4.2)
|
changeset |
files
|
2014-10-25 |
mjsousa |
fix code generation when dereferencing pointers (ref_to) to arrays (ref_to_array^[5])
|
changeset |
files
|
2014-10-25 |
mjsousa |
Fix bug: set the scope annotation in deref_operators used inside structs
|
changeset |
files
|
2014-10-25 |
mjsousa |
Editing of error message to make it more clear.
|
changeset |
files
|
2014-10-25 |
mjsousa |
Filling of symbol->scope annotation moved from narrow to fill_candidate_datatypes_c (became possible because narrowing of struct, array and symbolic variables is now done directly in fill_candidate_datatypes_c)
|
changeset |
files
|
2014-10-25 |
mjsousa |
fill_candidate_datatypes_c now uses search_varinstance_decl_c instead of search_varfb_instance_type_c (moving towards deprecation of search_varfb_instance_type_c)
|
changeset |
files
|
2014-10-19 |
mjsousa |
Do the full fill_candidate/narrow_datatype algorithm for all fields of a structured variable in the fill_candidate_datatypes_c
|
changeset |
files
|