2014-05-31Remove 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.

2014-05-29Add 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.

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

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

2014-05-20Check 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).

2014-05-20Fix 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)

2014-05-08Fix 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'

2014-04-08Correctly 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)

2014-04-04Remove 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.

2014-03-31A little code cleanup (reduce number of possible variable generation states)
mjsousa [Mon, 31 Mar 2014 20:05:49 +0100] rev 887
A little code cleanup (reduce number of possible variable generation states)

2014-03-30Finish: Change order of SET_xxx() macros. (this will allow me to simplify the print_setter() methods later on)
mjsousa [Sun, 30 Mar 2014 09:41:06 +0100] rev 886
Finish: Change order of SET_xxx() macros. (this will allow me to simplify the print_setter() methods later on)

2014-03-29Change order of SET_xxx() macros. (this will allow me to simplify the print_setter() methods later on)
mjsousa [Sat, 29 Mar 2014 22:46:09 +0000] rev 885
Change order of SET_xxx() macros. (this will allow me to simplify the print_setter() methods later on)

2014-03-27More static declarations in POUS.c in order to avoid conflicting symbol definitions with new POUS.c inclusion scheme
Edouard Tisserant [Thu, 27 Mar 2014 09:52:13 +0100] rev 884
More static declarations in POUS.c in order to avoid conflicting symbol definitions with new POUS.c inclusion scheme

2014-03-26Fix multiple resources support, POUS.c now only contain static definitions. POUS.c is included in configuration C code as well as in resources to allow GLOBAL FBs to be declared in configurations
Edouard Tisserant [Wed, 26 Mar 2014 13:20:45 +0100] rev 883
Fix multiple resources support, POUS.c now only contain static definitions. POUS.c is included in configuration C code as well as in resources to allow GLOBAL FBs to be declared in configurations

2014-03-20Disable stage4 options with on windows since getsuboptr isn't supported in mingw
Edouard Tisserant [Thu, 20 Mar 2014 17:27:29 +0100] rev 882
Disable stage4 options with on windows since getsuboptr isn't supported in mingw

2014-03-20merge
Edouard Tisserant [Thu, 20 Mar 2014 10:29:39 +0100] rev 881
merge

2014-03-19Track of line number correctly when input file has code with very long lines.
mjsousa [Wed, 19 Mar 2014 12:13:43 +0000] rev 880
Track of line number correctly when input file has code with very long lines.

2014-03-19Fix memory leak in lexical parser.
mjsousa [Wed, 19 Mar 2014 12:05:18 +0000] rev 879
Fix memory leak in lexical parser.

2014-03-16Make generation of #line directives optional.
mjsousa [Sun, 16 Mar 2014 13:02:28 +0000] rev 878
Make generation of #line directives optional.

2014-03-16Insert #line directives in generated C code.
mjsousa [Sun, 16 Mar 2014 10:16:25 +0000] rev 877
Insert #line directives in generated C code.

2014-03-15Add support for parsing of REF_TO keyword (defined in IEC61131-3 v3). This support is currently inactive (in flex) until we get to add C code generation later on.
mjsousa [Sat, 15 Mar 2014 20:10:20 +0000] rev 876
Add support for parsing of REF_TO keyword (defined in IEC61131-3 v3). This support is currently inactive (in flex) until we get to add C code generation later on.

2014-03-15Update files to be ignored by mercurial: ignore files generated by autoconf, directory test/, and *.orig
mjsousa [Sat, 15 Mar 2014 08:31:35 +0000] rev 875
Update files to be ignored by mercurial: ignore files generated by autoconf, directory test/, and *.orig

2014-03-02Fix bug: do not print IL 'label' when generating inline functions (JMPxx label was generating erroneous C code)
mjsousa [Sun, 02 Mar 2014 17:04:17 +0000] rev 874
Fix bug: do not print IL 'label' when generating inline functions (JMPxx label was generating erroneous C code)

2014-03-02Add limited support for the REF() operator (defined in v3 of IEC 61131-3)
mjsousa [Sun, 02 Mar 2014 16:42:56 +0000] rev 873
Add limited support for the REF() operator (defined in v3 of IEC 61131-3)

2014-02-24Remove assertion being failed by IL labels (IL labels do not yet have specific datatypes).
mjsousa [Mon, 24 Feb 2014 22:00:55 +0000] rev 872
Remove assertion being failed by IL labels (IL labels do not yet have specific datatypes).

2014-02-28Added stage1_2/Makefile.am weird rule to keep compatible with previous version of automake
Edouard Tisserant [Fri, 28 Feb 2014 11:27:53 +0100] rev 871
Added stage1_2/Makefile.am weird rule to keep compatible with previous version of automake

2014-02-19Merge
Edouard Tisserant [Wed, 19 Feb 2014 22:27:11 +0100] rev 870
Merge

2014-02-16fix definition of pragma.
mjsousa [Sun, 16 Feb 2014 14:29:31 +0000] rev 869
fix definition of pragma.

2014-02-16Fix the state machine that became broken 2 commits ago (when adding support for nested comments)
mjsousa [Sun, 16 Feb 2014 14:27:06 +0000] rev 868
Fix the state machine that became broken 2 commits ago (when adding support for nested comments)

2014-02-16Add option to control support for nested comments (default is off, as defined in IEC 61131-3 v2)
mjsousa [Sun, 16 Feb 2014 00:37:40 +0000] rev 867
Add option to control support for nested comments (default is off, as defined in IEC 61131-3 v2)

2014-02-15Add support for nested comments
mjsousa [Sat, 15 Feb 2014 23:58:16 +0000] rev 866
Add support for nested comments

2014-02-12Fix 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.

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

2014-01-06Fix 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)

2014-02-09Fix 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.

2014-02-09Code 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

2014-02-08Code 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 !

2014-02-08Code 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)

2014-02-08Fix 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() )

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

2014-02-08Fix 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)

2014-02-05Start 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.

2013-12-22Code 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

2013-12-20Fix 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.

2013-12-19Fix 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).

2013-12-18Fix 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] )

2013-09-07Add 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.

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

2013-08-23Use 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!)

2013-08-23Recursively 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.

2013-08-23Change 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.

2013-08-22Add 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.

2013-08-22Generate 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.

2013-08-22Fill 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).

2013-08-22Fix 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.

2013-08-22Fix 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, ...)

2013-08-21Allow 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.

2013-08-21Small 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)

2013-08-21Fix 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)

2013-08-21Fix 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.

2013-08-21make 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)

2013-08-21cosmetic change only - fix code alignment.
mjsousa [Wed, 21 Aug 2013 16:06:43 +0100] rev 835
cosmetic change only - fix code alignment.

2013-08-20Add support for FB call semantics of 'S' and 'R' IL operators!
mjsousa [Tue, 20 Aug 2013 11:15:40 +0100] rev 834
Add support for FB call semantics of 'S' and 'R' IL operators!
Remove segfaults when analysing buggy IL code (IL operators with no operands).

2013-08-20Stop lvalue check from segfaulting when coming across buggy IL code (IL operator with no operand!)
mjsousa [Tue, 20 Aug 2013 11:11:09 +0100] rev 833
Stop lvalue check from segfaulting when coming across buggy IL code (IL operator with no operand!)

2013-08-20Allow get_datatype_info_c to be called with NULL parameters.
mjsousa [Tue, 20 Aug 2013 11:08:15 +0100] rev 832
Allow get_datatype_info_c to be called with NULL parameters.

2013-08-15Do lvalue check of function output parameters (since they may contain expressions inside array subscripts!)
mjsousa [Thu, 15 Aug 2013 11:24:54 +0100] rev 831
Do lvalue check of function output parameters (since they may contain expressions inside array subscripts!)

2013-08-10Handle buggy source code gracefully (do not bork when non-array variable is used as an array. e.g: int_var[42]:= 33)
mjsousa [Sat, 10 Aug 2013 09:10:06 +0100] rev 830
Handle buggy source code gracefully (do not bork when non-array variable is used as an array. e.g: int_var[42]:= 33)

2013-08-07Delete debugging messages left in by mistake.
mjsousa [Wed, 07 Aug 2013 10:34:57 +0100] rev 829
Delete debugging messages left in by mistake.

2013-08-07Fix segfault when doing lvalue check of buggy IEC 61131-3 source code
mjsousa [Wed, 07 Aug 2013 10:24:32 +0100] rev 828
Fix segfault when doing lvalue check of buggy IEC 61131-3 source code

2013-08-07Fix datatype analysis of structured variables that contain arrays in their fields (e.g. var.x1[var2 + 42].y1).
mjsousa [Wed, 07 Aug 2013 10:18:29 +0100] rev 827
Fix datatype analysis of structured variables that contain arrays in their fields (e.g. var.x1[var2 + 42].y1).

2013-08-05Add capability of returning array subscript list while decomposing a struct/array variable.
mjsousa [Mon, 05 Aug 2013 15:57:00 +0100] rev 826
Add capability of returning array subscript list while decomposing a struct/array variable.

2013-08-05Code cleanup: Remove unused option = Delete dead code.
mjsousa [Mon, 05 Aug 2013 08:26:30 +0100] rev 825
Code cleanup: Remove unused option = Delete dead code.

2013-08-20merge
mjsousa [Tue, 20 Aug 2013 17:35:11 +0100] rev 824
merge

2013-07-19Declare that YYLSTYPE is not the default trivial datatype used by bison. (was causing compile errors in bison ver >= 2.7)
Mario de Sousa <msousa@fe.up.pt> [Fri, 19 Jul 2013 13:31:35 +0100] rev 823
Declare that YYLSTYPE is not the default trivial datatype used by bison. (was causing compile errors in bison ver >= 2.7)

2014-02-19Fix build on Ubuntu 13.10
Edouard Tisserant [Wed, 19 Feb 2014 22:25:10 +0100] rev 822
Fix build on Ubuntu 13.10

2013-10-11Fixed warning when compiling generated program containing external variable assignments
Laurent Bessard [Fri, 11 Oct 2013 12:38:36 +0200] rev 821
Fixed warning when compiling generated program containing external variable assignments

2013-06-07Enlarged flex buffer size in order to accept larger C pragmas
Edouard Tisserant [Fri, 07 Jun 2013 11:27:29 +0900] rev 820
Enlarged flex buffer size in order to accept larger C pragmas

2013-05-18Missing braces arround extern declarartions in __SET_EXTERNAL define was making problem with GCC in switch case statements
edouard [Sat, 18 May 2013 16:35:41 +0900] rev 819
Missing braces arround extern declarartions in __SET_EXTERNAL define was making problem with GCC in switch case statements

2013-05-16Moved __INIT_* defines within type definition headers files
Edouard Tisserant [Thu, 16 May 2013 14:37:33 +0900] rev 818
Moved __INIT_* defines within type definition headers files

2013-05-02Fixed warning in accessor __SET_EXTERNAL
Laurent Bessard [Thu, 02 May 2013 10:42:17 +0200] rev 817
Fixed warning in accessor __SET_EXTERNAL

2013-04-18Fixed bug when defining task with single_data_source instead of interval_data_source
Laurent Bessard [Thu, 18 Apr 2013 22:27:01 +0200] rev 816
Fixed bug when defining task with single_data_source instead of interval_data_source

2013-04-05Merged Mario's changes
Edouard Tisserant [Fri, 05 Apr 2013 09:37:52 +0900] rev 815
Merged Mario's changes

2013-04-04Fix bug related to FB invocation of FB instances declared as VAR_EXTERN.
Mario de Sousa <msousa@fe.up.pt> [Thu, 04 Apr 2013 18:55:20 +0100] rev 814
Fix bug related to FB invocation of FB instances declared as VAR_EXTERN.

2013-04-04Merged Mario's changes
Edouard Tisserant [Thu, 04 Apr 2013 09:45:11 +0900] rev 813
Merged Mario's changes

2013-04-03Partial fix to VAR_EXTERN vs VAR_GLOBAL check. Now considers globals declared in resources too. TODO: recursively check FB declared in the program.
Mario de Sousa <msousa@fe.up.pt> [Wed, 03 Apr 2013 19:49:52 +0100] rev 812
Partial fix to VAR_EXTERN vs VAR_GLOBAL check. Now considers globals declared in resources too. TODO: recursively check FB declared in the program.

2013-02-22Allow variables declared inside resources to be referenced by res_name.var_name
Mario de Sousa <msousa@fe.up.pt> [Fri, 22 Feb 2013 21:09:59 +0000] rev 811
Allow variables declared inside resources to be referenced by res_name.var_name

2013-02-13Add a new node to the abstract symtax tree, which will let us do datatype checking of FB variable declarations using the standard algorithm, and no special cases.
Mario de Sousa <msousa@fe.up.pt> [Wed, 13 Feb 2013 18:56:25 +0000] rev 810
Add a new node to the abstract symtax tree, which will let us do datatype checking of FB variable declarations using the standard algorithm, and no special cases.

2013-02-05Print filename when debugging abstract symbol table.
Mario de Sousa <msousa@fe.up.pt> [Tue, 05 Feb 2013 17:40:23 +0000] rev 809
Print filename when debugging abstract symbol table.

2013-01-23Consider fb_name_decl_c a non base data type class!
Mario de Sousa <msousa@fe.up.pt> [Wed, 23 Jan 2013 14:53:14 +0000] rev 808
Consider fb_name_decl_c a non base data type class!

2013-01-23Fill symbol->datatype anotation for FB declarations.
Mario de Sousa <msousa@fe.up.pt> [Wed, 23 Jan 2013 14:30:03 +0000] rev 807
Fill symbol->datatype anotation for FB declarations.

2013-01-23Fill in the symbol.datatype annotation in symbol classes used in derived data type declarations.
Mario de Sousa <msousa@fe.up.pt> [Wed, 23 Jan 2013 13:46:11 +0000] rev 806
Fill in the symbol.datatype annotation in symbol classes used in derived data type declarations.

2013-01-22Use simple_spec_init_c inside en_param_declaration_c (will reduce need to handle it as a special case in the future).
Mario de Sousa <msousa@fe.up.pt> [Tue, 22 Jan 2013 16:07:49 +0000] rev 805
Use simple_spec_init_c inside en_param_declaration_c (will reduce need to handle it as a special case in the future).

2013-03-11Merged
Laurent Bessard [Mon, 11 Mar 2013 12:54:25 +0100] rev 804
Merged

2013-03-11Fixed bug in string format when translating TIME and DATETIME to STRING
Laurent Bessard [Mon, 11 Mar 2013 12:51:01 +0100] rev 803
Fixed bug in string format when translating TIME and DATETIME to STRING

2013-03-11Fixed bug with SFC transition datatype checking
Laurent Bessard [Mon, 11 Mar 2013 12:49:33 +0100] rev 802
Fixed bug with SFC transition datatype checking

2013-03-08Stripped generated files again. http://stackoverflow.com/questions/3290908/which-files-generated-by-autotools-should-i-keep-in-version-control-repository
Edouard Tisserant [Fri, 08 Mar 2013 11:38:26 +0900] rev 801
Stripped generated files again. http://stackoverflow.com/questions/3290908/which-files-generated-by-autotools-should-i-keep-in-version-control-repository

2013-03-08Fixed bug in case statement with enumerated type variable as case expression
Laurent Bessard [Fri, 08 Mar 2013 02:00:36 +0100] rev 800
Fixed bug in case statement with enumerated type variable as case expression

2013-03-08Merged
Laurent Bessard [Fri, 08 Mar 2013 01:01:15 +0100] rev 799
Merged

2013-01-13Set the symbol->datatpe of function_declaration_c
Mario de Sousa <msousa@fe.up.pt> [Sun, 13 Jan 2013 16:06:00 +0000] rev 798
Set the symbol->datatpe of function_declaration_c

2013-01-13Fill in the symbol->datatype of elementary datatypes.
Mario de Sousa <msousa@fe.up.pt> [Sun, 13 Jan 2013 14:25:38 +0000] rev 797
Fill in the symbol->datatype of elementary datatypes.

2013-01-10merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 10 Jan 2013 10:49:50 +0000] rev 796
merge

2013-01-03merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 03 Jan 2013 18:27:06 +0000] rev 795
merge

2013-01-03Fix divide by 0 bug.
Mario de Sousa <msousa@fe.up.pt> [Thu, 03 Jan 2013 18:26:32 +0000] rev 794
Fix divide by 0 bug.

2013-01-03grand merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 03 Jan 2013 18:23:07 +0000] rev 793
grand merge

2013-01-10disable not yet complete constant propagation algorithm (currently brocken and producing incorrect results),
Mario de Sousa <msousa@fe.up.pt> [Thu, 10 Jan 2013 10:47:06 +0000] rev 792
disable not yet complete constant propagation algorithm (currently brocken and producing incorrect results),

2013-01-10merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 10 Jan 2013 10:38:41 +0000] rev 791
merge

2013-01-03Fix constant propagation for repeat_statement_c class.
Manuele Conti <conti.ma@alice.it> [Thu, 03 Jan 2013 23:39:25 +0100] rev 790
Fix constant propagation for repeat_statement_c class.

2013-01-03Remove unused variable.
Manuele Conti <conti.ma@alice.it> [Thu, 03 Jan 2013 23:16:19 +0100] rev 789
Remove unused variable.

2013-01-03Implement Mario's suggestions:
Manuele Conti <conti.ma@alice.it> [Thu, 03 Jan 2013 22:54:55 +0100] rev 788
Implement Mario's suggestions:
- Clean up code replace merge algorithm with a function.
- Fix for_statement setting control variable to not a constant.
- Fix for_statement checking BY expression to get correct value for optimization
branch.

Thanks Mario.

2013-01-03Fix constant_folding missing call. [Bug found by Mario.]
Manuele Conti <conti.ma@alice.it> [Thu, 03 Jan 2013 20:34:10 +0100] rev 787
Fix constant_folding missing call. [Bug found by Mario.]

2013-01-03Fix divide by 0 bug.
Mario de Sousa <msousa@fe.up.pt> [Thu, 03 Jan 2013 19:31:12 +0000] rev 786
Fix divide by 0 bug.

2013-01-03merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 03 Jan 2013 17:04:04 +0000] rev 785
merge

2013-01-03Fix CPPFLAGS Makefile.am for all stage4.
Manuele Conti <conti.ma@alice.it> [Thu, 03 Jan 2013 11:39:27 +0100] rev 784
Fix CPPFLAGS Makefile.am for all stage4.

2012-12-31Remove redundant class for get variable name.
Manuele Conti <conti.ma@alice.it> [Mon, 31 Dec 2012 11:02:38 +0100] rev 783
Remove redundant class for get variable name.

2012-12-28Fix constant propagation alg. in for statement like Mario suggestion.
Manuele Conti <conti.ma@alice.it> [Fri, 28 Dec 2012 16:24:17 +0100] rev 782
Fix constant propagation alg. in for statement like Mario suggestion.

2012-12-28Add note about How Constant Folding class is extended with a implementation constant propagation algorithm
Manuele Conti <conti.ma@alice.it> [Fri, 28 Dec 2012 11:22:02 +0100] rev 781
Add note about How Constant Folding class is extended with a implementation constant propagation algorithm
by Mario de Sousa.

2012-12-26Add constant propagation algorithm for loop cycles.
Manuele Conti <conti.ma@alice.it> [Thu, 27 Dec 2012 00:17:08 +0100] rev 780
Add constant propagation algorithm for loop cycles.

2012-12-28Update symbol_c::first_file/last_file entries in list_c::add_element()
Mario de Sousa <msousa@fe.up.pt> [Fri, 28 Dec 2012 11:51:24 +0000] rev 779
Update symbol_c::first_file/last_file entries in list_c::add_element()

2012-12-27moved class to obtain datatype name (in char *) to get_datatype_info_c
Mario de Sousa <msousa@fe.up.pt> [Thu, 27 Dec 2012 15:31:01 +0000] rev 778
moved class to obtain datatype name (in char *) to get_datatype_info_c

2012-12-27merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 27 Dec 2012 15:04:58 +0000] rev 777
merge

2012-12-24Fix comment about meet semilattice rules.
Manuele Conti <conti.ma@alice.it> [Mon, 24 Dec 2012 16:56:08 +0100] rev 776
Fix comment about meet semilattice rules.

2012-12-22Complete fix initialize const_value.
Manuele Conti <conti.ma@alice.it> [Sat, 22 Dec 2012 19:34:57 +0100] rev 775
Complete fix initialize const_value.

2012-12-22Start to implement constant propagation algorithm.
Manuele Conti <conti.ma@alice.it> [Sat, 22 Dec 2012 19:31:48 +0100] rev 774
Start to implement constant propagation algorithm.

2012-12-22Fix const_value field initialized.
Manuele Conti <conti.ma@alice.it> [Sat, 22 Dec 2012 19:30:44 +0100] rev 773
Fix const_value field initialized.

2012-12-02Remove Ambiguous enumerate value in enum conversion functions.
Manuele Conti <conti.ma@alice.it> [Sun, 02 Dec 2012 18:20:02 +0100] rev 772
Remove Ambiguous enumerate value in enum conversion functions.

2012-12-02Fix enum conversion function to string.
Manuele Conti <conti.ma@alice.it> [Sun, 02 Dec 2012 12:30:41 +0100] rev 771
Fix enum conversion function to string.

2012-11-28Fix struct generic_function_call_t initialize style.
Manuele Conti <conti.ma@alice.it> [Wed, 28 Nov 2012 22:51:24 +0100] rev 770
Fix struct generic_function_call_t initialize style.

2012-11-27Merge with Mario's changes.
Manuele Conti <conti.ma@alice.it> [Tue, 27 Nov 2012 23:47:22 +0100] rev 769
Merge with Mario's changes.

2012-12-20Merge with Mario's repository.
Manuele Conti <conti.ma@alice.it> [Thu, 20 Dec 2012 10:46:51 +0100] rev 768
Merge with Mario's repository.

2012-12-20Fix warning about call fprintf without format string.
Manuele Conti <conti.ma@alice.it> [Thu, 20 Dec 2012 10:42:01 +0100] rev 767
Fix warning about call fprintf without format string.

2012-12-03merge
Mario de Sousa <msousa@fe.up.pt> [Mon, 03 Dec 2012 18:44:16 +0000] rev 766
merge

2012-12-02Remove Ambiguous enumerate value in enum conversion functions.
Manuele Conti <conti.ma@alice.it> [Sun, 02 Dec 2012 18:20:02 +0100] rev 765
Remove Ambiguous enumerate value in enum conversion functions.

2012-12-02Fix enum conversion function to string.
Manuele Conti <conti.ma@alice.it> [Sun, 02 Dec 2012 12:30:41 +0100] rev 764
Fix enum conversion function to string.

2012-11-28Fix struct generic_function_call_t initialize style.
Manuele Conti <conti.ma@alice.it> [Wed, 28 Nov 2012 22:51:24 +0100] rev 763
Fix struct generic_function_call_t initialize style.

2012-12-03Small code cleanup.
Mario de Sousa <msousa@fe.up.pt> [Mon, 03 Dec 2012 14:06:49 +0000] rev 762
Small code cleanup.

2012-12-01Allow bison to ask for an END_OF_INPUT token multiple times!
mjsousa [Sat, 01 Dec 2012 11:30:16 +0000] rev 761
Allow bison to ask for an END_OF_INPUT token multiple times!

2012-12-01Protect against redefining macros
mjsousa [Sat, 01 Dec 2012 11:27:48 +0000] rev 760
Protect against redefining macros

2012-11-27merge
Mario de Sousa <msousa@fe.up.pt> [Tue, 27 Nov 2012 17:20:16 +0000] rev 759
merge

2012-11-27Fix flag to enable conversion functions.
Manuele Conti <conti.ma@alice.it> [Tue, 27 Nov 2012 17:01:41 +0100] rev 758
Fix flag to enable conversion functions.

2012-11-27Code cleanup: move tracking functions to flex.
Mario de Sousa <msousa@fe.up.pt> [Tue, 27 Nov 2012 15:49:05 +0000] rev 757
Code cleanup: move tracking functions to flex.

2012-11-27Insert the auto generated enum datatype conversion functions after the TYPE...END_TYPE, instead of at the end of input file.
Mario de Sousa <msousa@fe.up.pt> [Tue, 27 Nov 2012 14:49:08 +0000] rev 756
Insert the auto generated enum datatype conversion functions after the TYPE...END_TYPE, instead of at the end of input file.

2012-11-26merge
Mario de Sousa <msousa@fe.up.pt> [Mon, 26 Nov 2012 16:38:15 +0000] rev 755
merge

2012-11-23Set ENO to false when conversion function fails.
Manuele Conti <conti.ma@alice.it> [Fri, 23 Nov 2012 11:38:57 +0100] rev 754
Set ENO to false when conversion function fails.

2012-11-23Fix typo in functionDataType array.
Manuele Conti <conti.ma@alice.it> [Fri, 23 Nov 2012 14:11:57 +0100] rev 753
Fix typo in functionDataType array.

2012-11-23Add files missing from a few commits ago...
Mario de Sousa <msousa@fe.up.pt> [Fri, 23 Nov 2012 09:31:55 +0000] rev 752
Add files missing from a few commits ago...

2012-11-22merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 22 Nov 2012 19:26:56 +0000] rev 751
merge

2012-11-20Refix automake files.
Manuele Conti <conti.ma@alice.it> [Tue, 20 Nov 2012 21:06:55 +0100] rev 750
Refix automake files.

2012-11-20Add some comments to argument new code.
Manuele Conti <conti.ma@alice.it> [Tue, 20 Nov 2012 20:55:44 +0100] rev 749
Add some comments to argument new code.

2012-11-19Start to change code like Mario suggestions.
Manuele Conti <conti.ma@alice.it> [Tue, 20 Nov 2012 00:01:57 +0100] rev 748
Start to change code like Mario suggestions.

2012-11-19Create functionDataType array in derived_conversion_functions_c.
Manuele Conti <conti.ma@alice.it> [Mon, 19 Nov 2012 22:53:43 +0100] rev 747
Create functionDataType array in derived_conversion_functions_c.

2012-11-16Add conversion functions option.
Manuele Conti <conti.ma@alice.it> [Fri, 16 Nov 2012 10:26:23 +0100] rev 746
Add conversion functions option.

2012-11-15Start enumerate conversion functions.
Manuele Conti <manuele.conti@sirius-es.it> [Thu, 15 Nov 2012 17:30:35 +0100] rev 745
Start enumerate conversion functions.

2012-11-22merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 22 Nov 2012 19:19:48 +0000] rev 744
merge

2012-11-12Be sure to not redefine TRUE and FALSE macros.
Manuele Conti <conti.ma@alice.it> [Mon, 12 Nov 2012 22:36:55 +0100] rev 743
Be sure to not redefine TRUE and FALSE macros.

2012-11-22merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 22 Nov 2012 19:05:29 +0000] rev 742
merge

2012-11-12Removed unused __attribute__((__packed__)) only gcc compatible.
Manuele Conti <conti.ma@alice.it> [Mon, 12 Nov 2012 22:33:58 +0100] rev 741
Removed unused __attribute__((__packed__)) only gcc compatible.

2012-11-12Protect IEC_STD_LIB.H header agaist multi-include problems.
Manuele Conti <conti.ma@alice.it> [Mon, 12 Nov 2012 22:26:21 +0100] rev 740
Protect IEC_STD_LIB.H header agaist multi-include problems.

2012-11-22merge
Mario de Sousa <msousa@fe.up.pt> [Thu, 22 Nov 2012 19:02:05 +0000] rev 739
merge

2012-11-22Start to move enumeration declaration checking to its own class.
Mario de Sousa <msousa@fe.up.pt> [Thu, 22 Nov 2012 18:53:37 +0000] rev 738
Start to move enumeration declaration checking to its own class.

2012-11-22Fix comments and code alignment
Mario de Sousa <msousa@fe.up.pt> [Thu, 22 Nov 2012 18:51:42 +0000] rev 737
Fix comments and code alignment

2012-11-19Fix warnings previous change introduced when compiling with gcc.
Mario de Sousa <msousa@fe.up.pt> [Mon, 19 Nov 2012 18:59:12 +0000] rev 736
Fix warnings previous change introduced when compiling with gcc.

2012-11-18Fix some important clang++ warnings.
Manuele Conti <conti.ma@alice.it> [Sun, 18 Nov 2012 12:54:48 +0100] rev 735
Fix some important clang++ warnings.

2012-11-15Allow use of type#value syntax when defining default initial value inside a TYPE..END_TYPE declaration.
Mario de Sousa <msousa@fe.up.pt> [Thu, 15 Nov 2012 14:14:00 +0000] rev 734
Allow use of type#value syntax when defining default initial value inside a TYPE..END_TYPE declaration.

2012-11-15Do datatype verification of fully qualified enumerated values (e.g. ENUMTYPE#enumconst)
Mario de Sousa <msousa@fe.up.pt> [Thu, 15 Nov 2012 12:57:04 +0000] rev 733
Do datatype verification of fully qualified enumerated values (e.g. ENUMTYPE#enumconst)

2012-11-14Add datatype checking of enumeration data type declarations.
Mario de Sousa <msousa@fe.up.pt> [Wed, 14 Nov 2012 18:39:02 +0000] rev 732
Add datatype checking of enumeration data type declarations.

2012-11-14Print const values of symbol.
Mario de Sousa <msousa@fe.up.pt> [Wed, 14 Nov 2012 18:37:42 +0000] rev 731
Print const values of symbol.

2012-11-14Fix code generation of enum value constants (this is a temporary fix - it will be followed by a code cleanup).
Mario de Sousa <msousa@fe.up.pt> [Wed, 14 Nov 2012 15:25:03 +0000] rev 730
Fix code generation of enum value constants (this is a temporary fix - it will be followed by a code cleanup).

2012-11-14Fix bug in datatype checking of enumerated datatypes delcarations.
Mario de Sousa <msousa@fe.up.pt> [Wed, 14 Nov 2012 15:18:14 +0000] rev 729
Fix bug in datatype checking of enumerated datatypes delcarations.

2012-11-14Fix datatype checking of enumerated datatype declarations. We now follow the fill->narrow algorithm correctly.
Mario de Sousa <msousa@fe.up.pt> [Wed, 14 Nov 2012 14:03:57 +0000] rev 728
Fix datatype checking of enumerated datatype declarations. We now follow the fill->narrow algorithm correctly.

2012-11-14Add method to determine the id (name) of a datatype.
Mario de Sousa <msousa@fe.up.pt> [Wed, 14 Nov 2012 13:10:05 +0000] rev 727
Add method to determine the id (name) of a datatype.

2012-11-13Change the base datatype of enumerations to an enumerated_type_declaration_c (for named types!)
Mario de Sousa <msousa@fe.up.pt> [Tue, 13 Nov 2012 18:03:17 +0000] rev 726
Change the base datatype of enumerations to an enumerated_type_declaration_c (for named types!)

2012-11-13Change the public interface to debug functions.
Mario de Sousa <msousa@fe.up.pt> [Tue, 13 Nov 2012 18:02:15 +0000] rev 725
Change the public interface to debug functions.

2012-11-09Check for errors in enum datatype declarations. (This is not yet complete as it will not yet stop the compilation process if these errors are found)
Mario de Sousa <msousa@fe.up.pt> [Fri, 09 Nov 2012 14:34:36 +0000] rev 724
Check for errors in enum datatype declarations. (This is not yet complete as it will not yet stop the compilation process if these errors are found)

2012-11-09Fix one more bug - upper_bound() works a little differently to what we want!
Mario de Sousa <msousa@fe.up.pt> [Fri, 09 Nov 2012 13:08:18 +0000] rev 723
Fix one more bug - upper_bound() works a little differently to what we want!

2012-11-08Fix more bugs in dsymtable_c (real semantics of std::multimap::lower_bound is not what was assumed!)
Mario de Sousa <msousa@fe.up.pt> [Thu, 08 Nov 2012 17:54:48 +0000] rev 722
Fix more bugs in dsymtable_c (real semantics of std::multimap::lower_bound is not what was assumed!)

2012-11-08Fix counting bug in dsymbtable_c
Mario de Sousa <msousa@fe.up.pt> [Thu, 08 Nov 2012 17:31:50 +0000] rev 721
Fix counting bug in dsymbtable_c

2012-11-08Use duplicate symtable instead of symtable for enum constant value table (this will later allow us to detect semantic errors in IEC 61131-3 source code)
Mario de Sousa <msousa@fe.up.pt> [Thu, 08 Nov 2012 17:31:29 +0000] rev 720
Use duplicate symtable instead of symtable for enum constant value table (this will later allow us to detect semantic errors in IEC 61131-3 source code)

2012-11-08Move the enumerated_value_symtable to fill_candidate_datatypes_c, since it is only used there!
Mario de Sousa <msousa@fe.up.pt> [Thu, 08 Nov 2012 12:49:03 +0000] rev 719
Move the enumerated_value_symtable to fill_candidate_datatypes_c, since it is only used there!

2012-11-07Make search_base_type_c a singleton!
Mario de Sousa <msousa@fe.up.pt> [Wed, 07 Nov 2012 20:07:11 +0000] rev 718
Make search_base_type_c a singleton!

2012-11-07Start datatype checking of variable declarations (for now, only seting symbol.datatype of enumerations)
Mario de Sousa <msousa@fe.up.pt> [Wed, 07 Nov 2012 19:26:38 +0000] rev 717
Start datatype checking of variable declarations (for now, only seting symbol.datatype of enumerations)

2012-11-07Do datatype checking of enum values defined inside anonymous enumeration types (i.e. enum types defined inside a VAR ... END_VAR daclaration).
Mario de Sousa <msousa@fe.up.pt> [Wed, 07 Nov 2012 10:03:54 +0000] rev 716
Do datatype checking of enum values defined inside anonymous enumeration types (i.e. enum types defined inside a VAR ... END_VAR daclaration).

2013-02-23Added support for testing BCD value validity in BCD_TO_UINT function
Laurent Bessard [Sat, 23 Feb 2013 23:14:59 +0100] rev 715
Added support for testing BCD value validity in BCD_TO_UINT function

2013-02-23Fixed bug in DATE_AND_TIME_TO_TIME_OF_DAY and DATE_AND_TIME_TO_DATE when date and time is before 1970-01-01-00:00:00
Laurent Bessard [Sat, 23 Feb 2013 22:38:37 +0100] rev 714
Fixed bug in DATE_AND_TIME_TO_TIME_OF_DAY and DATE_AND_TIME_TO_DATE when date and time is before 1970-01-01-00:00:00

2012-12-19Fix warning message when declaring global variables in configuration
Laurent Bessard [Wed, 19 Dec 2012 12:25:56 +0100] rev 713
Fix warning message when declaring global variables in configuration

2012-12-03Removed unused variable
Laurent Bessard [Tue, 04 Dec 2012 00:05:22 +0100] rev 712
Removed unused variable

2012-12-03Replacing libc time functions for date <-> timespec translation by platform and localtime independant implementation
Laurent Bessard [Mon, 03 Dec 2012 23:36:03 +0100] rev 711
Replacing libc time functions for date <-> timespec translation by platform and localtime independant implementation

2012-11-28Removed files generedted by autoconf, should not be in repo
Edouard Tisserant [Wed, 28 Nov 2012 12:00:38 +0900] rev 710
Removed files generedted by autoconf, should not be in repo

2012-11-28Fixed timegm usage incompatible with mingw, reverted to mktime in case mingw is detected
Edouard Tisserant [Wed, 28 Nov 2012 11:52:03 +0900] rev 709
Fixed timegm usage incompatible with mingw, reverted to mktime in case mingw is detected

2012-11-16Fix in accessor undefined init methods for function block global instances
Laurent Bessard [Fri, 16 Nov 2012 01:02:54 +0100] rev 708
Fix in accessor undefined init methods for function block global instances

2012-11-15Fix undefined function toupper in iec_std_lib
Laurent Bessard [Fri, 16 Nov 2012 00:39:35 +0100] rev 707
Fix undefined function toupper in iec_std_lib

2012-11-15Adding support for declaring function block instances as global and external variables
Laurent Bessard [Thu, 15 Nov 2012 22:28:53 +0100] rev 706
Adding support for declaring function block instances as global and external variables

2012-11-08Fix DATE conversions standard functions
Laurent Bessard [Thu, 08 Nov 2012 18:55:57 +0100] rev 705
Fix DATE conversions standard functions