diff -r ff5c92df0c78 -r f9e001952488 tests/syntax/identifier/identifier_as_program.test --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/syntax/identifier/identifier_as_program.test Sat Feb 09 08:57:14 2008 +0100 @@ -0,0 +1,66 @@ +(* Test whether the keyword XXXX may be used as an identifier for: + * Program identifier + * + * The XXXX names in the following code are merely a placeholder. + * They will be replaced by several identifiers before actual testing + * of the compiler. + *) + +(* The identifiers that will replace the XXXX + * must be placed on a line starting with # + * All identifiers preceded by # are ignored! + * The identifier list must be placed inside an IEC 61131-3 comment. + *) +(* This file is specific for identifiers identical to IL operators. + * See the note following the identifier list + *) +(* +#IL_operators ANDN CAL CALC CALCN CD CLK CU IN JMP JMPC JMPCN LD LDN ORN PT PV R R1 RET RETC RETCN S S1 ST STN XORN +#SFC_qualifiers D DS L N P #R #S SD SL + NOTE: R and S are identical to IL operators!! +#Task_initialisers PRIORITY SINGLE INTERVAL +*) + +(* NOTE: The identifier as a variable test has some special cases. + * Namely, when using IL operators as variable names. + * Even though the syntax of the IL language would not result + * in ambiguities in the above case, our parser does not currently + * allow the use of variables (with names identical to IL + * operators) within IL code. + * + * The following test code must therefore consider two possibilities: + * - if the identifier under test is an IL operator + * - if the identifier under test is not an IL operator + *) + + + + + + +PROGRAM XXXX +VAR_INPUT + a_1 : BOOL; +END_VAR + LD a_1 +END_PROGRAM + + + + + +CONFIGURATION config1 + TASK fast(PRIORITY := 4); + PROGRAM P1 WITH fast: + XXXX(a_1 := TRUE); +END_CONFIGURATION + + + + +(* Checking whether the use of XXXX will confuse any other + * normal and correct IL or ST code. + *) +{#include "basic_code.test" } + +