fixing C code generation of return_statement_c and exit_statement_c
authorMario de Sousa <msousa@fe.up.pt>
Tue, 05 Apr 2011 18:31:55 +0100
changeset 283 214d3fdee596
parent 282 871edf12fe64
child 284 64a4504633d4
fixing C code generation of return_statement_c and exit_statement_c
lib/standard_functions.h
lib/standard_functions.txt
stage4/generate_c/generate_c.cc
stage4/generate_c/generate_c_il.cc
stage4/generate_c/generate_c_st.cc
--- a/lib/standard_functions.h	Tue Apr 05 17:12:12 2011 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1466 +0,0 @@
-
-
-inline
-BOOL_TO_BYTE(BOOL IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_DINT(BOOL IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_DWORD(BOOL IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_INT(BOOL IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_LINT(BOOL IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_LREAL(BOOL IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_LWORD(BOOL IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_REAL(BOOL IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_SINT(BOOL IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_UDINT(BOOL IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_UINT(BOOL IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_ULINT(BOOL IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_USINT(BOOL IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BOOL_TO_WORD(BOOL IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_BOOL (EN,__ENO,IN); }
-
-inline
-BYTE_TO_BOOL(BYTE IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_DINT(BYTE IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_DWORD(BYTE IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_INT(BYTE IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_LINT(BYTE IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_LREAL(BYTE IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_LWORD(BYTE IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_REAL(BYTE IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_SINT(BYTE IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_UDINT(BYTE IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_UINT(BYTE IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_ULINT(BYTE IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_USINT(BYTE IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_BYTE (EN,__ENO,IN); }
-
-inline
-BYTE_TO_WORD(BYTE IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_BYTE (EN,__ENO,IN); }
-
-inline
-DINT_TO_BOOL(DINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_BYTE(DINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_DWORD(DINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_INT(DINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_LINT(DINT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_LREAL(DINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_LWORD(DINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_REAL(DINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_SINT(DINT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_UDINT(DINT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_UINT(DINT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_ULINT(DINT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_USINT(DINT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_DINT (EN,__ENO,IN); }
-
-inline
-DINT_TO_WORD(DINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_DINT (EN,__ENO,IN); }
-
-inline
-DWORD_TO_BOOL(DWORD IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_BYTE(DWORD IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_DINT(DWORD IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_INT(DWORD IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_LINT(DWORD IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_LREAL(DWORD IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_LWORD(DWORD IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_REAL(DWORD IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_SINT(DWORD IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_UDINT(DWORD IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_UINT(DWORD IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_ULINT(DWORD IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_USINT(DWORD IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_DWORD (EN,__ENO,IN); }
-
-inline
-DWORD_TO_WORD(DWORD IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_DWORD (EN,__ENO,IN); }
-
-inline
-INT_TO_BOOL(INT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_BYTE(INT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_DINT(INT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_DWORD(INT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_LINT(INT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_LREAL(INT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_LWORD(INT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_REAL(INT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_SINT(INT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_UDINT(INT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_UINT(INT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_ULINT(INT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_USINT(INT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_INT (EN,__ENO,IN); }
-
-inline
-INT_TO_WORD(INT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_INT (EN,__ENO,IN); }
-
-inline
-LINT_TO_BOOL(LINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_BYTE(LINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_DINT(LINT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_DWORD(LINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_INT(LINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_LREAL(LINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_LWORD(LINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_REAL(LINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_SINT(LINT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_UDINT(LINT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_UINT(LINT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_ULINT(LINT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_USINT(LINT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_LINT (EN,__ENO,IN); }
-
-inline
-LINT_TO_WORD(LINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_LINT (EN,__ENO,IN); }
-
-inline
-LREAL_TO_BOOL(LREAL IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_BYTE(LREAL IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_DINT(LREAL IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_DWORD(LREAL IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_INT(LREAL IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_LINT(LREAL IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_LWORD(LREAL IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_REAL(LREAL IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_SINT(LREAL IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_UDINT(LREAL IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_UINT(LREAL IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_ULINT(LREAL IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_USINT(LREAL IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LREAL_TO_WORD(LREAL IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_LREAL (EN,__ENO,IN); }
-
-inline
-LWORD_TO_BOOL(LWORD IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_BYTE(LWORD IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_DINT(LWORD IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_DWORD(LWORD IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_INT(LWORD IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_LINT(LWORD IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_LREAL(LWORD IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_REAL(LWORD IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_SINT(LWORD IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_UDINT(LWORD IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_UINT(LWORD IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_ULINT(LWORD IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_USINT(LWORD IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_LWORD (EN,__ENO,IN); }
-
-inline
-LWORD_TO_WORD(LWORD IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_LWORD (EN,__ENO,IN); }
-
-inline
-REAL_TO_BOOL(REAL IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_BYTE(REAL IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_DINT(REAL IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_DWORD(REAL IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_INT(REAL IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_LINT(REAL IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_LREAL(REAL IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_LWORD(REAL IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_SINT(REAL IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_UDINT(REAL IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_UINT(REAL IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_ULINT(REAL IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_USINT(REAL IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_REAL (EN,__ENO,IN); }
-
-inline
-REAL_TO_WORD(REAL IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_REAL (EN,__ENO,IN); }
-
-inline
-SINT_TO_BOOL(SINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_BYTE(SINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_DINT(SINT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_DWORD(SINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_INT(SINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_LINT(SINT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_LREAL(SINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_LWORD(SINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_REAL(SINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_UDINT(SINT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_UINT(SINT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_ULINT(SINT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_USINT(SINT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_SINT (EN,__ENO,IN); }
-
-inline
-SINT_TO_WORD(SINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_SINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_BOOL(UDINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_BYTE(UDINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_DINT(UDINT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_DWORD(UDINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_INT(UDINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_LINT(UDINT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_LREAL(UDINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_LWORD(UDINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_REAL(UDINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_SINT(UDINT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_UINT(UDINT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_ULINT(UDINT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_USINT(UDINT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UDINT_TO_WORD(UDINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_UDINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_BOOL(UINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_BYTE(UINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_DINT(UINT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_DWORD(UINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_INT(UINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_LINT(UINT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_LREAL(UINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_LWORD(UINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_REAL(UINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_SINT(UINT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_UDINT(UINT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_ULINT(UINT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_USINT(UINT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_UINT (EN,__ENO,IN); }
-
-inline
-UINT_TO_WORD(UINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_UINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_BOOL(ULINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_BYTE(ULINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_DINT(ULINT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_DWORD(ULINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_INT(ULINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_LINT(ULINT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_LREAL(ULINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_LWORD(ULINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_REAL(ULINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_SINT(ULINT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_UDINT(ULINT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_UINT(ULINT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_USINT(ULINT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_ULINT (EN,__ENO,IN); }
-
-inline
-ULINT_TO_WORD(ULINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_ULINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_BOOL(USINT IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_BYTE(USINT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_DINT(USINT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_DWORD(USINT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_INT(USINT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_LINT(USINT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_LREAL(USINT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_LWORD(USINT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_REAL(USINT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_SINT(USINT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_UDINT(USINT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_UINT(USINT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_ULINT(USINT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_USINT (EN,__ENO,IN); }
-
-inline
-USINT_TO_WORD(USINT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__move_USINT (EN,__ENO,IN); }
-
-inline
-WORD_TO_BOOL(WORD IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_BYTE(WORD IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_DINT(WORD IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_DWORD(WORD IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_INT(WORD IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_LINT(WORD IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_LREAL(WORD IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_LWORD(WORD IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_REAL(WORD IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_SINT(WORD IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_UDINT(WORD IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_UINT(WORD IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_ULINT(WORD IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-WORD_TO_USINT(WORD IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__move_WORD (EN,__ENO,IN); }
-
-inline
-STRING_TO_BOOL(STRING IN, BOOL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BOOL )__string_to_bool (EN,__ENO,IN); }
-
-inline
-STRING_TO_BYTE(STRING IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__string_to_bit (EN,__ENO,IN); }
-
-inline
-STRING_TO_WORD(STRING IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__string_to_bit (EN,__ENO,IN); }
-
-inline
-STRING_TO_DWORD(STRING IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__string_to_bit (EN,__ENO,IN); }
-
-inline
-STRING_TO_LWORD(STRING IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__string_to_bit (EN,__ENO,IN); }
-
-inline
-STRING_TO_SINT(STRING IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__string_to_sint (EN,__ENO,IN); }
-
-inline
-STRING_TO_INT(STRING IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__string_to_sint (EN,__ENO,IN); }
-
-inline
-STRING_TO_DINT(STRING IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__string_to_sint (EN,__ENO,IN); }
-
-inline
-STRING_TO_LINT(STRING IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__string_to_sint (EN,__ENO,IN); }
-
-inline
-STRING_TO_USINT(STRING IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__string_to_uint (EN,__ENO,IN); }
-
-inline
-STRING_TO_UINT(STRING IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__string_to_uint (EN,__ENO,IN); }
-
-inline
-STRING_TO_UDINT(STRING IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__string_to_uint (EN,__ENO,IN); }
-
-inline
-STRING_TO_ULINT(STRING IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__string_to_uint (EN,__ENO,IN); }
-
-inline
-STRING_TO_REAL(STRING IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__string_to_real (EN,__ENO,IN); }
-
-inline
-STRING_TO_LREAL(STRING IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__string_to_real (EN,__ENO,IN); }
-
-inline
-STRING_TO_DATE(STRING IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__string_to_time (EN,__ENO,IN); }
-
-inline
-STRING_TO_TIME(STRING IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__string_to_time (EN,__ENO,IN); }
-
-inline
-STRING_TO_TOD(STRING IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__string_to_time (EN,__ENO,IN); }
-
-inline
-STRING_TO_DT(STRING IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__string_to_time (EN,__ENO,IN); }
-
-inline
-BOOL_TO_STRING(BOOL IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__bool_to_string (EN,__ENO,IN); }
-
-inline
-BYTE_TO_STRING(BYTE IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__bit_to_string (EN,__ENO,IN); }
-
-inline
-WORD_TO_STRING(WORD IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__bit_to_string (EN,__ENO,IN); }
-
-inline
-DWORD_TO_STRING(DWORD IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__bit_to_string (EN,__ENO,IN); }
-
-inline
-LWORD_TO_STRING(LWORD IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__bit_to_string (EN,__ENO,IN); }
-
-inline
-INT_TO_STRING(INT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__sint_to_string (EN,__ENO,IN); }
-
-inline
-LINT_TO_STRING(LINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__sint_to_string (EN,__ENO,IN); }
-
-inline
-DINT_TO_STRING(DINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__sint_to_string (EN,__ENO,IN); }
-
-inline
-SINT_TO_STRING(SINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__sint_to_string (EN,__ENO,IN); }
-
-inline
-USINT_TO_STRING(USINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__uint_to_string (EN,__ENO,IN); }
-
-inline
-UINT_TO_STRING(UINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__uint_to_string (EN,__ENO,IN); }
-
-inline
-UDINT_TO_STRING(UDINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__uint_to_string (EN,__ENO,IN); }
-
-inline
-ULINT_TO_STRING(ULINT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__uint_to_string (EN,__ENO,IN); }
-
-inline
-REAL_TO_STRING(REAL IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__real_to_string (EN,__ENO,IN); }
-
-inline
-LREAL_TO_STRING(LREAL IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__real_to_string (EN,__ENO,IN); }
-
-inline
-DATE_TO_STRING(DATE IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__date_to_string (EN,__ENO,IN); }
-
-inline
-DT_TO_STRING(DT IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__dt_to_string (EN,__ENO,IN); }
-
-inline
-TIME_TO_STRING(TIME IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__time_to_string (EN,__ENO,IN); }
-
-inline
-TOD_TO_STRING(TOD IN, STRING *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(STRING )__tod_to_string (EN,__ENO,IN); }
-
-inline
-BOOL_TO_DATE(BOOL IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-BYTE_TO_DATE(BYTE IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-WORD_TO_DATE(WORD IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-DWORD_TO_DATE(DWORD IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-LWORD_TO_DATE(LWORD IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-SINT_TO_DATE(SINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-INT_TO_DATE(INT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-DINT_TO_DATE(DINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-LINT_TO_DATE(LINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-USINT_TO_DATE(USINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-UINT_TO_DATE(UINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-UDINT_TO_DATE(UDINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-ULINT_TO_DATE(ULINT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__int_to_time (EN,__ENO,IN); }
-
-inline
-REAL_TO_DATE(REAL IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__real_to_time (EN,__ENO,IN); }
-
-inline
-LREAL_TO_DATE(LREAL IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DATE )__real_to_time (EN,__ENO,IN); }
-
-inline
-DATE_TO_BYTE(DATE IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_WORD(DATE IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_DWORD(DATE IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_LWORD(DATE IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_SINT(DATE IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_INT(DATE IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_DINT(DATE IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_LINT(DATE IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_USINT(DATE IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_UINT(DATE IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_UDINT(DATE IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_ULINT(DATE IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DATE_TO_REAL(DATE IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-DATE_TO_LREAL(DATE IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-BOOL_TO_TIME(BOOL IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-BYTE_TO_TIME(BYTE IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-WORD_TO_TIME(WORD IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-DWORD_TO_TIME(DWORD IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-LWORD_TO_TIME(LWORD IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-SINT_TO_TIME(SINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-INT_TO_TIME(INT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-DINT_TO_TIME(DINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-LINT_TO_TIME(LINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-USINT_TO_TIME(USINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-UINT_TO_TIME(UINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-UDINT_TO_TIME(UDINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-ULINT_TO_TIME(ULINT IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__int_to_time (EN,__ENO,IN); }
-
-inline
-REAL_TO_TIME(REAL IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__real_to_time (EN,__ENO,IN); }
-
-inline
-LREAL_TO_TIME(LREAL IN, TIME *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TIME )__real_to_time (EN,__ENO,IN); }
-
-inline
-TIME_TO_BYTE(TIME IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_WORD(TIME IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_DWORD(TIME IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_LWORD(TIME IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_SINT(TIME IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_INT(TIME IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_DINT(TIME IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_LINT(TIME IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_USINT(TIME IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_UINT(TIME IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_UDINT(TIME IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_ULINT(TIME IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TIME_TO_REAL(TIME IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-TIME_TO_LREAL(TIME IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-BOOL_TO_DT(BOOL IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-BYTE_TO_DT(BYTE IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-WORD_TO_DT(WORD IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-DWORD_TO_DT(DWORD IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-LWORD_TO_DT(LWORD IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-SINT_TO_DT(SINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-INT_TO_DT(INT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-DINT_TO_DT(DINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-LINT_TO_DT(LINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-USINT_TO_DT(USINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-UINT_TO_DT(UINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-UDINT_TO_DT(UDINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-ULINT_TO_DT(ULINT IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__int_to_time (EN,__ENO,IN); }
-
-inline
-REAL_TO_DT(REAL IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__real_to_time (EN,__ENO,IN); }
-
-inline
-LREAL_TO_DT(LREAL IN, DT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DT )__real_to_time (EN,__ENO,IN); }
-
-inline
-DT_TO_BYTE(DT IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_WORD(DT IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_DWORD(DT IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_LWORD(DT IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_SINT(DT IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_INT(DT IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_DINT(DT IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_LINT(DT IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_USINT(DT IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_UINT(DT IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_UDINT(DT IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_ULINT(DT IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-DT_TO_REAL(DT IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-DT_TO_LREAL(DT IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-BOOL_TO_TOD(BOOL IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-BYTE_TO_TOD(BYTE IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-WORD_TO_TOD(WORD IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-DWORD_TO_TOD(DWORD IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-LWORD_TO_TOD(LWORD IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-SINT_TO_TOD(SINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-INT_TO_TOD(INT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-DINT_TO_TOD(DINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-LINT_TO_TOD(LINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-USINT_TO_TOD(USINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-UINT_TO_TOD(UINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-UDINT_TO_TOD(UDINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-ULINT_TO_TOD(ULINT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__int_to_time (EN,__ENO,IN); }
-
-inline
-REAL_TO_TOD(REAL IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__real_to_time (EN,__ENO,IN); }
-
-inline
-LREAL_TO_TOD(LREAL IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(TOD )__real_to_time (EN,__ENO,IN); }
-
-inline
-TOD_TO_BYTE(TOD IN, BYTE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(BYTE )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_WORD(TOD IN, WORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(WORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_DWORD(TOD IN, DWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_LWORD(TOD IN, LWORD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LWORD )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_SINT(TOD IN, SINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(SINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_INT(TOD IN, INT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(INT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_DINT(TOD IN, DINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(DINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_LINT(TOD IN, LINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_USINT(TOD IN, USINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(USINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_UINT(TOD IN, UINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_UDINT(TOD IN, UDINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(UDINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_ULINT(TOD IN, ULINT *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(ULINT )__time_to_int (EN,__ENO,IN); }
-
-inline
-TOD_TO_REAL(TOD IN, REAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(REAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-TOD_TO_LREAL(TOD IN, LREAL *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT=(LREAL )__time_to_real (EN,__ENO,IN); }
-
-inline
-DATE_AND_TIME_TO_TIME_OF_DAY(DT IN, TOD *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT = (TOD )__date_and_time_to_time_of_day(EN,__ENO,IN); }
-
-inline
-DATE_AND_TIME_TO_DATE(DT IN, DATE *__OUT, BOOL EN, BOOL *__ENO)
-{ *__OUT = (DATE )__date_and_time_to_date(EN,__ENO,IN); }
-
--- a/lib/standard_functions.txt	Tue Apr 05 17:12:12 2011 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2568 +0,0 @@
-
-{disable code generation}
-
-
-
-FUNCTION BOOL_TO_BYTE : BYTE
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_DINT : DINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_DWORD : DWORD
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_INT : INT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_LINT : LINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_LREAL : LREAL
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_LWORD : LWORD
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_REAL : REAL
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_SINT : SINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_UDINT : UDINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_UINT : UINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_ULINT : ULINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_USINT : USINT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_WORD : WORD
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_BOOL : BOOL
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_DINT : DINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_DWORD : DWORD
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_INT : INT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_LINT : LINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_LREAL : LREAL
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_LWORD : LWORD
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_REAL : REAL
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_SINT : SINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_UDINT : UDINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_UINT : UINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_ULINT : ULINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_USINT : USINT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_WORD : WORD
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_BOOL : BOOL
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_BYTE : BYTE
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_DWORD : DWORD
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_INT : INT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_LINT : LINT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_LREAL : LREAL
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_LWORD : LWORD
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_REAL : REAL
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_SINT : SINT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_UDINT : UDINT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_UINT : UINT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_ULINT : ULINT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_USINT : USINT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_WORD : WORD
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_BOOL : BOOL
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_BYTE : BYTE
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_DINT : DINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_INT : INT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_LINT : LINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_LREAL : LREAL
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_LWORD : LWORD
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_REAL : REAL
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_SINT : SINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_UDINT : UDINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_UINT : UINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_ULINT : ULINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_USINT : USINT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_WORD : WORD
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_BOOL : BOOL
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_BYTE : BYTE
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_DINT : DINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_DWORD : DWORD
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_LINT : LINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_LREAL : LREAL
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_LWORD : LWORD
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_REAL : REAL
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_SINT : SINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_UDINT : UDINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_UINT : UINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_ULINT : ULINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_USINT : USINT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_WORD : WORD
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_BOOL : BOOL
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_BYTE : BYTE
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_DINT : DINT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_DWORD : DWORD
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_INT : INT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_LREAL : LREAL
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_LWORD : LWORD
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_REAL : REAL
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_SINT : SINT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_UDINT : UDINT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_UINT : UINT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_ULINT : ULINT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_USINT : USINT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_WORD : WORD
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_BOOL : BOOL
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_BYTE : BYTE
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_DINT : DINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_DWORD : DWORD
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_INT : INT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_LINT : LINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_LWORD : LWORD
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_REAL : REAL
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_SINT : SINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_UDINT : UDINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_UINT : UINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_ULINT : ULINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_USINT : USINT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_WORD : WORD
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_BOOL : BOOL
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_BYTE : BYTE
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_DINT : DINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_DWORD : DWORD
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_INT : INT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_LINT : LINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_LREAL : LREAL
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_REAL : REAL
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_SINT : SINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_UDINT : UDINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_UINT : UINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_ULINT : ULINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_USINT : USINT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_WORD : WORD
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_BOOL : BOOL
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_BYTE : BYTE
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_DINT : DINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_DWORD : DWORD
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_INT : INT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_LINT : LINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_LREAL : LREAL
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_LWORD : LWORD
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_SINT : SINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_UDINT : UDINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_UINT : UINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_ULINT : ULINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_USINT : USINT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_WORD : WORD
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_BOOL : BOOL
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_BYTE : BYTE
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_DINT : DINT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_DWORD : DWORD
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_INT : INT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_LINT : LINT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_LREAL : LREAL
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_LWORD : LWORD
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_REAL : REAL
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_UDINT : UDINT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_UINT : UINT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_ULINT : ULINT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_USINT : USINT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_WORD : WORD
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_BOOL : BOOL
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_BYTE : BYTE
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_DINT : DINT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_DWORD : DWORD
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_INT : INT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_LINT : LINT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_LREAL : LREAL
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_LWORD : LWORD
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_REAL : REAL
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_SINT : SINT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_UINT : UINT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_ULINT : ULINT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_USINT : USINT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_WORD : WORD
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_BOOL : BOOL
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_BYTE : BYTE
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_DINT : DINT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_DWORD : DWORD
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_INT : INT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_LINT : LINT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_LREAL : LREAL
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_LWORD : LWORD
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_REAL : REAL
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_SINT : SINT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_UDINT : UDINT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_ULINT : ULINT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_USINT : USINT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_WORD : WORD
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_BOOL : BOOL
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_BYTE : BYTE
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_DINT : DINT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_DWORD : DWORD
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_INT : INT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_LINT : LINT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_LREAL : LREAL
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_LWORD : LWORD
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_REAL : REAL
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_SINT : SINT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_UDINT : UDINT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_UINT : UINT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_USINT : USINT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_WORD : WORD
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_BOOL : BOOL
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_BYTE : BYTE
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_DINT : DINT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_DWORD : DWORD
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_INT : INT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_LINT : LINT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_LREAL : LREAL
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_LWORD : LWORD
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_REAL : REAL
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_SINT : SINT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_UDINT : UDINT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_UINT : UINT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_ULINT : ULINT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_WORD : WORD
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_BOOL : BOOL
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_BYTE : BYTE
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_DINT : DINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_DWORD : DWORD
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_INT : INT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_LINT : LINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_LREAL : LREAL
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_LWORD : LWORD
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_REAL : REAL
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_SINT : SINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_UDINT : UDINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_UINT : UINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_ULINT : ULINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_USINT : USINT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_BOOL : BOOL
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: BOOL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_BYTE : BYTE
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_WORD : WORD
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_DWORD : DWORD
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_LWORD : LWORD
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_SINT : SINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_INT : INT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_DINT : DINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_LINT : LINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_USINT : USINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_UINT : UINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_UDINT : UDINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_ULINT : ULINT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_REAL : REAL
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_LREAL : LREAL
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_DATE : DATE
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_TIME : TIME
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_TOD : TOD
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION STRING_TO_DT : DT
-  VAR_INPUT IN: STRING; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_STRING : STRING
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_STRING : STRING
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_STRING : STRING
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_STRING : STRING
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_STRING : STRING
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_STRING : STRING
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_STRING : STRING
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_STRING : STRING
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_STRING : STRING
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_STRING : STRING
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_STRING : STRING
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_STRING : STRING
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_STRING : STRING
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_STRING : STRING
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_STRING : STRING
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_STRING : STRING
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_STRING : STRING
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_STRING : STRING
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_STRING : STRING
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: STRING; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_DATE : DATE
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_DATE : DATE
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_DATE : DATE
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_DATE : DATE
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_DATE : DATE
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_DATE : DATE
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_DATE : DATE
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_DATE : DATE
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_DATE : DATE
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_DATE : DATE
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_DATE : DATE
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_DATE : DATE
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_DATE : DATE
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_DATE : DATE
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_DATE : DATE
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_BYTE : BYTE
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_WORD : WORD
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_DWORD : DWORD
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_LWORD : LWORD
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_SINT : SINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_INT : INT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_DINT : DINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_LINT : LINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_USINT : USINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_UINT : UINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_UDINT : UDINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_ULINT : ULINT
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_REAL : REAL
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_TO_LREAL : LREAL
-  VAR_INPUT IN: DATE; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_TIME : TIME
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_TIME : TIME
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_TIME : TIME
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_TIME : TIME
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_TIME : TIME
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_TIME : TIME
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_TIME : TIME
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_TIME : TIME
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_TIME : TIME
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_TIME : TIME
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_TIME : TIME
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_TIME : TIME
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_TIME : TIME
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_TIME : TIME
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_TIME : TIME
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: TIME; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_BYTE : BYTE
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_WORD : WORD
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_DWORD : DWORD
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_LWORD : LWORD
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_SINT : SINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_INT : INT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_DINT : DINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_LINT : LINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_USINT : USINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_UINT : UINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_UDINT : UDINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_ULINT : ULINT
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_REAL : REAL
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TIME_TO_LREAL : LREAL
-  VAR_INPUT IN: TIME; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_DT : DT
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_DT : DT
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_DT : DT
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_DT : DT
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_DT : DT
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_DT : DT
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_DT : DT
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_DT : DT
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_DT : DT
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_DT : DT
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_DT : DT
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_DT : DT
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_DT : DT
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_DT : DT
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_DT : DT
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: DT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_BYTE : BYTE
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_WORD : WORD
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_DWORD : DWORD
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_LWORD : LWORD
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_SINT : SINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_INT : INT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_DINT : DINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_LINT : LINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_USINT : USINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_UINT : UINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_UDINT : UDINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_ULINT : ULINT
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_REAL : REAL
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DT_TO_LREAL : LREAL
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BOOL_TO_TOD : TOD
-  VAR_INPUT IN: BOOL; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION BYTE_TO_TOD : TOD
-  VAR_INPUT IN: BYTE; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION WORD_TO_TOD : TOD
-  VAR_INPUT IN: WORD; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DWORD_TO_TOD : TOD
-  VAR_INPUT IN: DWORD; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LWORD_TO_TOD : TOD
-  VAR_INPUT IN: LWORD; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION SINT_TO_TOD : TOD
-  VAR_INPUT IN: SINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION INT_TO_TOD : TOD
-  VAR_INPUT IN: INT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DINT_TO_TOD : TOD
-  VAR_INPUT IN: DINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LINT_TO_TOD : TOD
-  VAR_INPUT IN: LINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION USINT_TO_TOD : TOD
-  VAR_INPUT IN: USINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UINT_TO_TOD : TOD
-  VAR_INPUT IN: UINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION UDINT_TO_TOD : TOD
-  VAR_INPUT IN: UDINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION ULINT_TO_TOD : TOD
-  VAR_INPUT IN: ULINT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION REAL_TO_TOD : TOD
-  VAR_INPUT IN: REAL; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION LREAL_TO_TOD : TOD
-  VAR_INPUT IN: LREAL; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_BYTE : BYTE
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: BYTE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_WORD : WORD
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: WORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_DWORD : DWORD
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: DWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_LWORD : LWORD
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: LWORD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_SINT : SINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: SINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_INT : INT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: INT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_DINT : DINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: DINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_LINT : LINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: LINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_USINT : USINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: USINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_UINT : UINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: UINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_UDINT : UDINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: UDINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_ULINT : ULINT
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: ULINT; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_REAL : REAL
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: REAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION TOD_TO_LREAL : LREAL
-  VAR_INPUT IN: TOD; END_VAR
-  VAR_OUTPUT OUT: LREAL; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_AND_TIME_TO_TIME_OF_DAY : TOD
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: TOD; END_VAR
-  LD TRUE
-END_FUNCTION
-
-
-FUNCTION DATE_AND_TIME_TO_DATE : DATE
-  VAR_INPUT IN: DT; END_VAR
-  VAR_OUTPUT OUT: DATE; END_VAR
-  LD TRUE
-END_FUNCTION
-
-{enable code generation}
-
--- a/stage4/generate_c/generate_c.cc	Tue Apr 05 17:12:12 2011 +0100
+++ b/stage4/generate_c/generate_c.cc	Tue Apr 05 18:31:55 2011 +0100
@@ -136,6 +136,10 @@
 #define TEMP_VAR VAR_LEADER "TMP_"
 #define SOURCE_VAR VAR_LEADER "SRC_"
 
+/* please see the comment before the RET_operator_c visitor for details... */
+#define END_LABEL VAR_LEADER "end"
+
+
 /***********************************************************************/
 /***********************************************************************/
 /***********************************************************************/
@@ -426,6 +430,43 @@
     };
     virtual ~generate_c_pous_c(void) {}
 
+  private:
+    void print_end_of_block_label(void) {
+      /* Print and __end label for return statements!
+       * If label is not used by at least one goto, compiler will generate a warning.
+       * To work around this we introduce the useless goto.
+       */
+      s4o.print("\n");
+      s4o.print(s4o.indent_spaces);
+      s4o.print("/* to humour the compiler, we insert a goto */\n");
+      s4o.print(s4o.indent_spaces);
+      s4o.print("goto ");
+      s4o.print(END_LABEL);
+      s4o.print(";\n");
+      s4o.indent_left();
+
+      /* write the label marking the end of the code block */
+      /* please see the comment before the RET_operator_c visitor for details... */
+      /* also needed for return_statement_c */
+      s4o.print("\n");
+      s4o.print(s4o.indent_spaces);
+      s4o.print(END_LABEL);
+      s4o.print(":\n");
+      s4o.indent_right();
+
+      /* since every label must be followed by at least one statement, and
+       * only the functions will introduce the return statement after this label,
+       * function blocks written in IL would result in invalid C++ code.
+       * To work around this we introduce the equivalent of a 'nop' operation
+       * to humour the compiler...
+       */
+      s4o.print(s4o.indent_spaces);
+      s4o.print("/* to humour the compiler, we insert a nop */\n");
+      s4o.print(s4o.indent_spaces);
+      s4o.print("if (0);\n\n");
+    }
+  
+
 
   public:
 /********************/
@@ -593,6 +634,8 @@
   generate_c_SFC_IL_ST_c generate_c_code(&s4o, symbol->derived_function_name, symbol);
   symbol->function_body->accept(generate_c_code);
   
+  print_end_of_block_label();
+  
   vardecl = new generate_c_vardecl_c(&s4o,
                 generate_c_vardecl_c::foutputassign_vf,
                 generate_c_vardecl_c::output_vt   |
@@ -776,6 +819,7 @@
   /* (C.5) Function code */
   generate_c_SFC_IL_ST_c generate_c_code(&s4o, symbol->fblock_name, symbol, FB_FUNCTION_PARAM"->");
   symbol->fblock_body->accept(generate_c_code);
+  print_end_of_block_label();
   s4o.indent_left();
   s4o.print(s4o.indent_spaces + "} // ");
   symbol->fblock_name->accept(*this);
@@ -936,6 +980,7 @@
   /* (C.5) Function code */
   generate_c_SFC_IL_ST_c generate_c_code(&s4o, symbol->program_type_name, symbol, FB_FUNCTION_PARAM"->");
   symbol->function_block_body->accept(generate_c_code);
+  print_end_of_block_label();
   s4o.indent_left();
   s4o.print(s4o.indent_spaces + "} // ");
   symbol->program_type_name->accept(*this);
--- a/stage4/generate_c/generate_c_il.cc	Tue Apr 05 17:12:12 2011 +0100
+++ b/stage4/generate_c/generate_c_il.cc	Tue Apr 05 18:31:55 2011 +0100
@@ -719,9 +719,6 @@
 /* B 2.1 Instructions and Operands */
 /***********************************/
 
-/* please see the comment before the RET_operator_c visitor for details... */
-#define END_LABEL VAR_LEADER "end"
-
 /*| instruction_list il_instruction */
 void *visit(instruction_list_c *symbol) {
   
@@ -742,40 +739,6 @@
 
   print_list(symbol, s4o.indent_spaces, ";\n" + s4o.indent_spaces, ";\n");
 
-  /* label not used by at least one goto result in a warning.
-   * To work around this we introduce the useless goto
-   * to humour the compiler...
-   */
-  s4o.print("\n");
-  s4o.print(s4o.indent_spaces);
-  s4o.print("/* to humour the compiler, we insert a goto */\n");
-  s4o.print(s4o.indent_spaces);
-  s4o.print("goto ");
-  s4o.print(END_LABEL);
-  s4o.print(";\n");
-
-  /* write the label marking the end of the code block */
-  /* please see the comment before the RET_operator_c visitor for details... */
-  s4o.print("\n");
-  s4o.print(s4o.indent_spaces);
-  s4o.print(END_LABEL);
-  s4o.print(":\n");
-  s4o.indent_right();
-  /* since every label must be followed by at least one statement, and
-   * only the functions will introduce the return statement after this label,
-   * function blocks written in IL would result in invalid C++ code.
-   * To work around this we introduce the equivalent of a 'nop' operation
-   * to humour the compiler...
-   */
-  s4o.print(s4o.indent_spaces);
-  s4o.print("/* to humour the compiler, we insert a nop */\n");
-  s4o.print(s4o.indent_spaces);
-  this->default_variable_name.accept(*this);
-  s4o.print(" = ");
-  this->default_variable_name.accept(*this);
-  s4o.print(";\n");
-  s4o.indent_left();
-
   return NULL;
 }
 
--- a/stage4/generate_c/generate_c_st.cc	Tue Apr 05 17:12:12 2011 +0100
+++ b/stage4/generate_c/generate_c_st.cc	Tue Apr 05 18:31:55 2011 +0100
@@ -796,6 +796,12 @@
 /* B 3.2.2 Subprogram Control Statements */
 /*****************************************/
 
+void *visit(return_statement_c *symbol) {
+  s4o.print("goto "); s4o.print(END_LABEL);
+  return NULL;
+}
+
+
 /* fb_name '(' [param_assignment_list] ')' */
 /* param_assignment_list -> may be NULL ! */
 //SYM_REF2(fb_invocation_c, fb_name, param_assignment_list)