# HG changeset patch # User Edouard Tisserant # Date 1633339753 -7200 # Node ID 068c2826633250e3207e3fc696a183e3eca183d8 # Parent 30adcffcf8e68fd454492d3f9443dd41eccb00ea Remove RETAIN qualifier for F_TRIG and R_TRIG 'M' variable. This is not following standard, and implicitely consumes a lot of RETAIN memory. User can explicitely qualify R_TRIG of F_TRIG instance as RETAIN if needed. diff -r 30adcffcf8e6 -r 068c28266332 lib/C/iec_std_FB.h --- a/lib/C/iec_std_FB.h Mon Jul 06 13:29:08 2020 +0200 +++ b/lib/C/iec_std_FB.h Mon Oct 04 11:29:13 2021 +0200 @@ -565,7 +565,7 @@ __INIT_VAR(data__->ENO,__BOOL_LITERAL(TRUE),retain) __INIT_VAR(data__->CLK,__BOOL_LITERAL(FALSE),retain) __INIT_VAR(data__->Q,__BOOL_LITERAL(FALSE),retain) - __INIT_VAR(data__->M,__BOOL_LITERAL(FALSE),1) + __INIT_VAR(data__->M,__BOOL_LITERAL(FALSE),retain) } // Code part @@ -598,7 +598,7 @@ __INIT_VAR(data__->ENO,__BOOL_LITERAL(TRUE),retain) __INIT_VAR(data__->CLK,__BOOL_LITERAL(FALSE),retain) __INIT_VAR(data__->Q,__BOOL_LITERAL(FALSE),retain) - __INIT_VAR(data__->M,__BOOL_LITERAL(FALSE),1) + __INIT_VAR(data__->M,__BOOL_LITERAL(FALSE),retain) } // Code part diff -r 30adcffcf8e6 -r 068c28266332 lib/edge_detection.txt --- a/lib/edge_detection.txt Mon Jul 06 13:29:08 2020 +0200 +++ b/lib/edge_detection.txt Mon Oct 04 11:29:13 2021 +0200 @@ -20,7 +20,7 @@ FUNCTION_BLOCK R_TRIG VAR_INPUT CLK: BOOL; END_VAR VAR_OUTPUT Q: BOOL; END_VAR - VAR RETAIN M: BOOL; END_VAR + VAR M: BOOL; END_VAR Q := CLK AND NOT M; M := CLK; END_FUNCTION_BLOCK @@ -28,7 +28,7 @@ FUNCTION_BLOCK F_TRIG VAR_INPUT CLK: BOOL; END_VAR VAR_OUTPUT Q: BOOL; END_VAR - VAR RETAIN M: BOOL; END_VAR + VAR M: BOOL; END_VAR Q := NOT CLK AND NOT M; M := NOT CLK; END_FUNCTION_BLOCK