Sun, 16 Nov 2014 15:37:12 +0000merge
mjsousa [Sun, 16 Nov 2014 15:37:12 +0000] rev 947
merge

Sun, 16 Nov 2014 14:46:52 +0000Make the relaxed datatype model a runtime option (off by default)
mjsousa [Sun, 16 Nov 2014 14:46:52 +0000] rev 946
Make the relaxed datatype model a runtime option (off by default)

Sun, 16 Nov 2014 12:54:10 +0000Add support for relaxed datatype model for array datatypes.
mjsousa [Sun, 16 Nov 2014 12:54:10 +0000] rev 945
Add support for relaxed datatype model for array datatypes.

Sun, 09 Nov 2014 22:02:34 +0000fix bug introduced a few commits ago: do not print the first char ('%') of a direct_variable_c (e.g. skip % in %IW4.2)
mjsousa [Sun, 09 Nov 2014 22:02:34 +0000] rev 944
fix bug introduced a few commits ago: do not print the first char ('%') of a direct_variable_c (e.g. skip % in %IW4.2)

Sat, 25 Oct 2014 13:20:10 +0100fix code generation when dereferencing pointers (ref_to) to arrays (ref_to_array^[5])
mjsousa [Sat, 25 Oct 2014 13:20:10 +0100] rev 943
fix code generation when dereferencing pointers (ref_to) to arrays (ref_to_array^[5])

Sat, 25 Oct 2014 13:17:12 +0100Fix bug: set the scope annotation in deref_operators used inside structs
mjsousa [Sat, 25 Oct 2014 13:17:12 +0100] rev 942
Fix bug: set the scope annotation in deref_operators used inside structs

Sat, 25 Oct 2014 11:28:48 +0100Editing of error message to make it more clear.
mjsousa [Sat, 25 Oct 2014 11:28:48 +0100] rev 941
Editing of error message to make it more clear.

Sat, 25 Oct 2014 11:21:40 +0100Filling 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)
mjsousa [Sat, 25 Oct 2014 11:21:40 +0100] rev 940
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)

Sat, 25 Oct 2014 11:15:55 +0100fill_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)
mjsousa [Sat, 25 Oct 2014 11:15:55 +0100] rev 939
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)

Sun, 19 Oct 2014 21:30:58 +0100Do the full fill_candidate/narrow_datatype algorithm for all fields of a structured variable in the fill_candidate_datatypes_c
mjsousa [Sun, 19 Oct 2014 21:30:58 +0100] rev 938
Do the full fill_candidate/narrow_datatype algorithm for all fields of a structured variable in the fill_candidate_datatypes_c
Allows us to remove temporary code from the search_varfb_decl_c

Sun, 19 Oct 2014 11:53:36 +0100Fix bug with multple dereferencing (bool_var := bool_ptr_ptr^^;)
mjsousa [Sun, 19 Oct 2014 11:53:36 +0100] rev 937
Fix bug with multple dereferencing (bool_var := bool_ptr_ptr^^;)

Sun, 19 Oct 2014 08:36:49 +0100Fix bug: Add support for de-referencing pointers to struct (struct_ptr^.elem1) when used inside FB.
mjsousa [Sun, 19 Oct 2014 08:36:49 +0100] rev 936
Fix bug: Add support for de-referencing pointers to struct (struct_ptr^.elem1) when used inside FB.
Note that multiple de-referencing of structs (struct_ptr_ptr^^.elem) is not supported inside FB code (this would need BIG changes to the compiler!)

Sun, 28 Sep 2014 17:48:42 +0100Fix bug: add support for dereferencing of REF_TO to REF_TO xxx (e.g.: bool_var := ref_to_ref_to_bool^^;)
mjsousa [Sun, 28 Sep 2014 17:48:42 +0100] rev 935
Fix bug: add support for dereferencing of REF_TO to REF_TO xxx (e.g.: bool_var := ref_to_ref_to_bool^^;)

Sun, 28 Sep 2014 17:39:28 +0100Turn support of derefencing operator '^' an option (default is not supported).
mjsousa [Sun, 28 Sep 2014 17:39:28 +0100] rev 934
Turn support of derefencing operator '^' an option (default is not supported).

Sun, 28 Sep 2014 16:35:44 +0100Add support for de-referencing of REF_TO datatypes (Note: dereferencing of arrays and structs not yet supported!)
mjsousa [Sun, 28 Sep 2014 16:35:44 +0100] rev 933
Add support for de-referencing of REF_TO datatypes (Note: dereferencing of arrays and structs not yet supported!)

Sat, 27 Sep 2014 20:09:19 +0100Add support for REF_TO inside arrays and structs (a non-standard feature!)
mjsousa [Sat, 27 Sep 2014 20:09:19 +0100] rev 932
Add support for REF_TO inside arrays and structs (a non-standard feature!)

Mon, 11 Aug 2014 08:07:12 +0100Code cleanup: with the introduction of anotation_map[], generate_c_vardecl_c can now derive directly from generate_c_base_c
mjsousa [Mon, 11 Aug 2014 08:07:12 +0100] rev 931
Code cleanup: with the introduction of anotation_map[], generate_c_vardecl_c can now derive directly from generate_c_base_c

Mon, 11 Aug 2014 07:56:00 +0100Fix typos in comments
mjsousa [Mon, 11 Aug 2014 07:56:00 +0100] rev 930
Fix typos in comments

Mon, 11 Aug 2014 07:55:11 +0100Add comments, and make get_datatype_id_str_c equivalent to get_datatype_id_c
mjsousa [Mon, 11 Aug 2014 07:55:11 +0100] rev 929
Add comments, and make get_datatype_id_str_c equivalent to get_datatype_id_c

Mon, 11 Aug 2014 07:22:37 +0100Fix calling of functions whose parameters are of an implicitly declared datatype (currently only makes sense for REF_TO datatypes, but may make sense to other datatypes too if the datatype model is changed in the future).
mjsousa [Mon, 11 Aug 2014 07:22:37 +0100] rev 928
Fix calling of functions whose parameters are of an implicitly declared datatype (currently only makes sense for REF_TO datatypes, but may make sense to other datatypes too if the datatype model is changed in the future).

Sun, 10 Aug 2014 08:51:33 +0100fix indentations.
mjsousa [Sun, 10 Aug 2014 08:51:33 +0100] rev 927
fix indentations.

Sun, 10 Aug 2014 08:27:28 +0100in lvalue, add check for REF() fucntion invocation, and the NULL literal
mjsousa [Sun, 10 Aug 2014 08:27:28 +0100] rev 926
in lvalue, add check for REF() fucntion invocation, and the NULL literal

Sat, 09 Aug 2014 11:22:57 +0100Initialise REF_TO variables to NULL.
mjsousa [Sat, 09 Aug 2014 11:22:57 +0100] rev 925
Initialise REF_TO variables to NULL.

Sat, 09 Aug 2014 10:12:38 +0100Make support for REF_TO ANY a command line option.
mjsousa [Sat, 09 Aug 2014 10:12:38 +0100] rev 924
Make support for REF_TO ANY a command line option.

Sat, 09 Aug 2014 09:20:03 +0100Add support for non standard REF_TO ANY (equivalent to void *)
mjsousa [Sat, 09 Aug 2014 09:20:03 +0100] rev 923
Add support for non standard REF_TO ANY (equivalent to void *)

Fri, 08 Aug 2014 10:45:54 +0100Update some comments. (No changes to code)
mjsousa [Fri, 08 Aug 2014 10:45:54 +0100] rev 922
Update some comments. (No changes to code)

Fri, 08 Aug 2014 10:26:52 +0100Introduce absyntax class for keyword ANY, and use REF_TO(ANY) as datatype of NULL literal.
mjsousa [Fri, 08 Aug 2014 10:26:52 +0100] rev 921
Introduce absyntax class for keyword ANY, and use REF_TO(ANY) as datatype of NULL literal.

Wed, 06 Aug 2014 10:43:15 +0100Fix bug (introduced a few commits ago) when generating SFC actions that are mapped onto variables --> Make generate_sfcdecl_c stateless (i.e. does not depend on order by which it is called).
mjsousa [Wed, 06 Aug 2014 10:43:15 +0100] rev 920
Fix bug (introduced a few commits ago) when generating SFC actions that are mapped onto variables --> Make generate_sfcdecl_c stateless (i.e. does not depend on order by which it is called).

Thu, 31 Jul 2014 17:49:44 +0100Add support for the 'NULL' keyword, defined in version 3 of IEC 61131-3.
mjsousa [Thu, 31 Jul 2014 17:49:44 +0100] rev 919
Add support for the 'NULL' keyword, defined in version 3 of IEC 61131-3.

Tue, 29 Jul 2014 13:39:40 +0100for option '-Op' (generate <pouname>.h/c): add '#include <pouname>.h' to the .c file, and '#ifdef <pouname>_H' to the .h file
mjsousa [Tue, 29 Jul 2014 13:39:40 +0100] rev 918
for option '-Op' (generate <pouname>.h/c): add '#include <pouname>.h' to the .c file, and '#ifdef <pouname>_H' to the .h file

Fri, 25 Jul 2014 14:58:33 +0100Ass include of iec_std_lib.h in POUS.h file.
mjsousa [Fri, 25 Jul 2014 14:58:33 +0100] rev 917
Ass include of iec_std_lib.h in POUS.h file.

Mon, 21 Jul 2014 10:39:46 +0100Add support for implicitly declared REF_TO datatypes.
mjsousa [Mon, 21 Jul 2014 10:39:46 +0100] rev 916
Add support for implicitly declared REF_TO datatypes.

Sun, 20 Jul 2014 21:57:10 +0100With -Op option --> Place implicitly defined datatypes in the .h file corresponding to the POU where they are used.
mjsousa [Sun, 20 Jul 2014 21:57:10 +0100] rev 915
With -Op option --> Place implicitly defined datatypes in the .h file corresponding to the POU where they are used.

Sun, 20 Jul 2014 21:48:58 +0100Add name of POU as prefix to names of implicitly defined datatypes
mjsousa [Sun, 20 Jul 2014 21:48:58 +0100] rev 914
Add name of POU as prefix to names of implicitly defined datatypes

Sun, 20 Jul 2014 16:45:45 +0100Implicitly defined array datatypes use new naming method (greatly simplifies stage 4 code).
mjsousa [Sun, 20 Jul 2014 16:45:45 +0100] rev 913
Implicitly defined array datatypes use new naming method (greatly simplifies stage 4 code).

Sun, 20 Jul 2014 03:14:57 +0100array_specification_c may be used as a datatype! Add it to spec_init_separator_c
mjsousa [Sun, 20 Jul 2014 03:14:57 +0100] rev 912
array_specification_c may be used as a datatype! Add it to spec_init_separator_c

Sun, 13 Jul 2014 17:25:20 +0100Change REF() operator to return the correct REF_TO datatype datatype.
mjsousa [Sun, 13 Jul 2014 17:25:20 +0100] rev 911
Change REF() operator to return the correct REF_TO datatype datatype.

Sun, 13 Jul 2014 13:47:16 +0100Narrow array subscripts correctly, even in the presence of other datatype errors (so we do not generate error messages for array subscripts that do not contain errors).
mjsousa [Sun, 13 Jul 2014 13:47:16 +0100] rev 910
Narrow array subscripts correctly, even in the presence of other datatype errors (so we do not generate error messages for array subscripts that do not contain errors).

Sun, 13 Jul 2014 12:26:58 +0100Add support for REF_TO derived datatypes (along with datatype verification)
mjsousa [Sun, 13 Jul 2014 12:26:58 +0100] rev 909
Add support for REF_TO derived datatypes (along with datatype verification)

Sun, 06 Jul 2014 23:31:08 +0100Add option to place each POU in a distinct .c and .h file pair.
mjsousa [Sun, 06 Jul 2014 23:31:08 +0100] rev 908
Add option to place each POU in a distinct .c and .h file pair.

Sun, 06 Jul 2014 16:54:53 +0100code re-organisation. Preparing for the changes to come in the next commit (one C file for each POU)
mjsousa [Sun, 06 Jul 2014 16:54:53 +0100] rev 907
code re-organisation. Preparing for the changes to come in the next commit (one C file for each POU)

Sun, 06 Jul 2014 13:40:54 +0100Remove un-used parameter from class constructor.
mjsousa [Sun, 06 Jul 2014 13:40:54 +0100] rev 906
Remove un-used parameter from class constructor.

Sun, 06 Jul 2014 11:39:20 +0100Move standard FBs to a pre-converted C file, insted of converting them every time along with the IEC source.
mjsousa [Sun, 06 Jul 2014 11:39:20 +0100] rev 905
Move standard FBs to a pre-converted C file, insted of converting them every time along with the IEC source.

Sun, 06 Jul 2014 11:07:38 +0100Move library files compiled to C to their own subdiectory.
mjsousa [Sun, 06 Jul 2014 11:07:38 +0100] rev 904
Move library files compiled to C to their own subdiectory.

Sun, 06 Jul 2014 10:16:48 +0100Fix stupid mistake in previous commit (use 'long double' instead of 'ld' in istandard library macro)
mjsousa [Sun, 06 Jul 2014 10:16:48 +0100] rev 903
Fix stupid mistake in previous commit (use 'long double' instead of 'ld' in istandard library macro)

Sat, 05 Jul 2014 14:10:28 +0100merge
mjsousa [Sat, 05 Jul 2014 14:10:28 +0100] rev 902
merge

Sat, 05 Jul 2014 13:57:39 +0100Update build/compile instructions to reflect the fact that autoconf needs to be executed.
mjsousa [Sat, 05 Jul 2014 13:57:39 +0100] rev 901
Update build/compile instructions to reflect the fact that autoconf needs to be executed.

Sat, 05 Jul 2014 13:39:30 +0100Fix time conversion function in std library, and change into macro (so it may be used in variable initialisations)
mjsousa [Sat, 05 Jul 2014 13:39:30 +0100] rev 900
Fix time conversion function in std library, and change into macro (so it may be used in variable initialisations)

Sun, 01 Jun 2014 08:59:57 +0100Add support for the stepname.T syntax.
mjsousa [Sun, 01 Jun 2014 08:59:57 +0100] rev 899
Add support for the stepname.T syntax.

Sun, 01 Jun 2014 08:59:02 +0100Change the name of the variable with the step state to stepname.X (in the generated VARIABLES.csv file)
mjsousa [Sun, 01 Jun 2014 08:59:02 +0100] rev 898
Change the name of the variable with the step state to stepname.X (in the generated VARIABLES.csv file)

Sat, 31 May 2014 16:22:57 +0100Add support for Stepname.X syntax.
mjsousa [Sat, 31 May 2014 16:22:57 +0100] rev 897
Add support for Stepname.X syntax.

Sat, 31 May 2014 12:49:43 +0100Remove dead code previously left in by mistake.
mjsousa [Sat, 31 May 2014 12:49:43 +0100] rev 896
Remove dead code previously left in by mistake.

Thu, 29 May 2014 12:06:22 +0100Add error message for invalid datatype of transition condition. Generalize datatype narrowing algorithm for transition conditions.
mjsousa [Thu, 29 May 2014 12:06:22 +0100] rev 895
Add error message for invalid datatype of transition condition. Generalize datatype narrowing algorithm for transition conditions.

Wed, 28 May 2014 11:32:09 +0200merge
Edouard Tisserant [Wed, 28 May 2014 11:32:09 +0200] rev 894
merge

Wed, 28 May 2014 10:39:31 +0200closed temporary fix branch
Edouard Tisserant [Wed, 28 May 2014 10:39:31 +0200] rev 893
closed temporary fix branch

Tue, 20 May 2014 08:25:59 +0100Check VAR_EXTERN variables declared in FBs instantiated in a Program (and recursively too - FBs in FBs).
mjsousa [Tue, 20 May 2014 08:25:59 +0100] rev 892
Check VAR_EXTERN variables declared in FBs instantiated in a Program (and recursively too - FBs in FBs).

Tue, 20 May 2014 08:24:25 +0100Fix typo in as yet dormant code (related to REF_TO keyword, that is not yet active)
mjsousa [Tue, 20 May 2014 08:24:25 +0100] rev 891
Fix typo in as yet dormant code (related to REF_TO keyword, that is not yet active)

Thu, 08 May 2014 12:21:48 +0100Fix compilation error on platforms where real64_t is mapped onto 'long double'
mjsousa [Thu, 08 May 2014 12:21:48 +0100] rev 890
Fix compilation error on platforms where real64_t is mapped onto 'long double'

Tue, 08 Apr 2014 14:35:31 +0100Correctly handle structured variables that include FB and external FBs (example: FB1.FB2.extFB3.FB4.extFB5.extFB6.structvar.field1 := 42;) (this commit fixes only ST code. TODO: IL and SFC)
mjsousa [Tue, 08 Apr 2014 14:35:31 +0100] rev 889
Correctly handle structured variables that include FB and external FBs (example: FB1.FB2.extFB3.FB4.extFB5.extFB6.structvar.field1 := 42;) (this commit fixes only ST code. TODO: IL and SFC)

Fri, 04 Apr 2014 16:21:55 +0100Remove call to type_is_complex() in ST code generation.
mjsousa [Fri, 04 Apr 2014 16:21:55 +0100] rev 888
Remove call to type_is_complex() in ST code generation.