Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

E0010: a name that nothing declares

Every variable a POU uses is declared in one of its VAR blocks (Ed.3 6.5). A global variable is seen in a POU only through a VAR_EXTERNAL declaration of it (Ed.3 6.5.2.2); a step’s flags are step.X and step.T; an enumerated value is its name or Type#Value.

PROGRAM p
VAR x : INT; END_VAR
y := x;            (* E0010: y is not declared *)
END_PROGRAM

A member that a type does not have, such as timer.QQ on a TON, and the internal VAR of a function block read from outside it, are E0010 too; so is a name in an instance’s initial value that is not one of its inputs, outputs or PUBLIC variables (Ed.3 6.6.3.3): c : Count := (limit := 5) is E0010 when limit is in the block’s plain VAR.