Wed, 12 Feb 2014 17:02:08 +0000Fix bug: when checking compatibility between GLOBAL and EXTERNAL variables, must only enforce GLOBAL CONSTANT => EXTERNAL CONSTANT.
mjsousa [Wed, 12 Feb 2014 17:02:08 +0000] rev 865
Fix bug: when checking compatibility between GLOBAL and EXTERNAL variables, must only enforce GLOBAL CONSTANT => EXTERNAL CONSTANT.
Reverse CONSTANT implication is not enforced, and neither is RETAIN compatibility.

Tue, 11 Feb 2014 10:55:27 +0000merge
mjsousa [Tue, 11 Feb 2014 10:55:27 +0000] rev 864
merge

Mon, 06 Jan 2014 12:25:21 +0000Fix bug: correctly generate code when accessing external variables declared inside FBs as a structured variable (realvar := fb1.fb2.extvar1.realvar)
Mario de Sousa <msousa@fe.up.pt> [Mon, 06 Jan 2014 12:25:21 +0000] rev 863
Fix bug: correctly generate code when accessing external variables declared inside FBs as a structured variable (realvar := fb1.fb2.extvar1.realvar)

Sun, 09 Feb 2014 08:05:44 +0000Fix bug in standard: standard does not allow multiple VAR_GLOBAL ... END_VAR constructs in configurations and resources. This is probably a bug, so we allow it.
mjsousa [Sun, 09 Feb 2014 08:05:44 +0000] rev 862
Fix bug in standard: standard does not allow multiple VAR_GLOBAL ... END_VAR constructs in configurations and resources. This is probably a bug, so we allow it.

Sun, 09 Feb 2014 07:23:30 +0000Code cleanup (part 3): generate_c_typedecl_c is no longer needed for code generation in POUS.c It is now only needed for datatype declaration in POUS.h
mjsousa [Sun, 09 Feb 2014 07:23:30 +0000] rev 861
Code cleanup (part 3): generate_c_typedecl_c is no longer needed for code generation in POUS.c It is now only needed for datatype declaration in POUS.h

Sat, 08 Feb 2014 23:10:12 +0000Code cleanup (part 2): generate_typedecl_c now only prints to POUS.h !
mjsousa [Sat, 08 Feb 2014 23:10:12 +0000] rev 860
Code cleanup (part 2): generate_typedecl_c now only prints to POUS.h !

Sat, 08 Feb 2014 20:38:19 +0000Code cleanup (part 1): subrange check functions are now declared in POUS.h (as static inline functions or #define)
mjsousa [Sat, 08 Feb 2014 20:38:19 +0000] rev 859
Code cleanup (part 1): subrange check functions are now declared in POUS.h (as static inline functions or #define)

Sat, 08 Feb 2014 18:33:32 +0000Fix get_datatype_info_c::is_subrange(), which did not work when using base type! (we now use get_equivtype() instead of get_base_type() )
mjsousa [Sat, 08 Feb 2014 18:33:32 +0000] rev 858
Fix get_datatype_info_c::is_subrange(), which did not work when using base type! (we now use get_equivtype() instead of get_base_type() )

Sat, 08 Feb 2014 10:48:20 +0000fix a couple of typos.
mjsousa [Sat, 08 Feb 2014 10:48:20 +0000] rev 857
fix a couple of typos.

Sat, 08 Feb 2014 10:32:26 +0000Fix bug - correctly declare struct members whose type is a directly defined array (e.g.: STRUCT x: ARRAY of XXX; END_STRUCT)
mjsousa [Sat, 08 Feb 2014 10:32:26 +0000] rev 856
Fix bug - correctly declare struct members whose type is a directly defined array (e.g.: STRUCT x: ARRAY of XXX; END_STRUCT)

Wed, 05 Feb 2014 20:04:50 +0000Start using the called_fb_declaration annotation when generating C code from FB calls in ST.
mjsousa [Wed, 05 Feb 2014 20:04:50 +0000] rev 855
Start using the called_fb_declaration annotation when generating C code from FB calls in ST.

Sun, 22 Dec 2013 09:50:02 +0000Code cleanup: move datatype analysis to get_datatype_info_c
Mario de Sousa <msousa@fe.up.pt> [Sun, 22 Dec 2013 09:50:02 +0000] rev 854
Code cleanup: move datatype analysis to get_datatype_info_c

Fri, 20 Dec 2013 11:44:38 +0000Fix bug-fix of previous commit.
Mario de Sousa <msousa@fe.up.pt> [Fri, 20 Dec 2013 11:44:38 +0000] rev 853
Fix bug-fix of previous commit.

Thu, 19 Dec 2013 19:38:29 +0000Fix bug: allow use, as lvalues, structures/arrays inside FBs (e.g. fb1.struct1.r := 33.3).
Mario de Sousa <msousa@fe.up.pt> [Thu, 19 Dec 2013 19:38:29 +0000] rev 852
Fix bug: allow use, as lvalues, structures/arrays inside FBs (e.g. fb1.struct1.r := 33.3).

Wed, 18 Dec 2013 18:41:05 +0000Fix bug/issue #33 (correctly access struct/array variables declared inside a FB -> r:=FB1.FB2.struct1.array1[3] )
Mario de Sousa <msousa@fe.up.pt> [Wed, 18 Dec 2013 18:41:05 +0000] rev 851
Fix bug/issue #33 (correctly access struct/array variables declared inside a FB -> r:=FB1.FB2.struct1.array1[3] )

Sat, 07 Sep 2013 22:08:09 +0100Add assertion suggested by Manuele.
Mario de Sousa <msousa@fe.up.pt> [Sat, 07 Sep 2013 22:08:09 +0100] rev 850
Add assertion suggested by Manuele.

Fri, 23 Aug 2013 15:13:11 +0100merge
mjsousa [Fri, 23 Aug 2013 15:13:11 +0100] rev 849
merge

Fri, 23 Aug 2013 12:33:12 +0100Use get_datatype_info_c::is_type_valid() to determine datatype validity
mjsousa [Fri, 23 Aug 2013 12:33:12 +0100] rev 848
Use get_datatype_info_c::is_type_valid() to determine datatype validity
(some datatype bugs in source code were going unreported!)

Fri, 23 Aug 2013 12:06:08 +0100Recursively check the datatype compatibility of values/expressions passed in function/FB invocations.
mjsousa [Fri, 23 Aug 2013 12:06:08 +0100] rev 847
Recursively check the datatype compatibility of values/expressions passed in function/FB invocations.

Fri, 23 Aug 2013 09:34:04 +0100Change error message text so as to become more suitable to where they might occur in the source code.
mjs [Fri, 23 Aug 2013 09:34:04 +0100] rev 846
Change error message text so as to become more suitable to where they might occur in the source code.

Thu, 22 Aug 2013 19:12:10 +0100Add code to check if an IN_OUT variable is being passed an IL list in formal IL FB/function invocations.
mjsousa [Thu, 22 Aug 2013 19:12:10 +0100] rev 845
Add code to check if an IN_OUT variable is being passed an IL list in formal IL FB/function invocations.

Thu, 22 Aug 2013 18:50:43 +0100Generate correct error message when encountering IL lists embedded in IL formal invocations.
mjsousa [Thu, 22 Aug 2013 18:50:43 +0100] rev 844
Generate correct error message when encountering IL lists embedded in IL formal invocations.

Thu, 22 Aug 2013 16:53:17 +0100Fill in the 'datatype' anotation in the identifiers of symbolic variables.
mjsousa [Thu, 22 Aug 2013 16:53:17 +0100] rev 843
Fill in the 'datatype' anotation in the identifiers of symbolic variables.
(even though currently it is not being used).

Thu, 22 Aug 2013 16:51:22 +0100Fix C code generation of FB invocation in IL.
mjsousa [Thu, 22 Aug 2013 16:51:22 +0100] rev 842
Fix C code generation of FB invocation in IL.

Thu, 22 Aug 2013 07:39:33 +0100Fix detection of datatype errors on IL conditional flow control operators (JMPC, RETC, ...)
mjsousa [Thu, 22 Aug 2013 07:39:33 +0100] rev 841
Fix detection of datatype errors on IL conditional flow control operators (JMPC, RETC, ...)

Wed, 21 Aug 2013 21:56:41 +0100Allow array_dimension_iterator to accept an array_spec_init_c.
mjsousa [Wed, 21 Aug 2013 21:56:41 +0100] rev 840
Allow array_dimension_iterator to accept an array_spec_init_c.
Fixes bug activated by generating C code from IL code containing array variables.

Wed, 21 Aug 2013 21:34:43 +0100Small code cleanup (move common code to a function)
mjsousa [Wed, 21 Aug 2013 21:34:43 +0100] rev 839
Small code cleanup (move common code to a function)

Wed, 21 Aug 2013 21:26:55 +0100Fix datatype analysis of conditional IL operators (CALC, CALCN, RETC, RETCN, JMPC, JMPCN, S and R)
mjsousa [Wed, 21 Aug 2013 21:26:55 +0100] rev 838
Fix datatype analysis of conditional IL operators (CALC, CALCN, RETC, RETCN, JMPC, JMPCN, S and R)

Wed, 21 Aug 2013 21:14:50 +0100Fix datatype analyses of S and R IL operators.
mjsousa [Wed, 21 Aug 2013 21:14:50 +0100] rev 837
Fix datatype analyses of S and R IL operators.

Wed, 21 Aug 2013 16:08:50 +0100make sure all IL operands are narrowed (datatype checking algorithm)
mjsousa [Wed, 21 Aug 2013 16:08:50 +0100] rev 836
make sure all IL operands are narrowed (datatype checking algorithm)