SA0029: Notation in code different to declarationPermalink

Detects the code locations where the notation of an identifier is different from the notation in its declaration

Justification: The IEC 61131-3 standard defines identifiers as not case-sensitive. This means that a variable declared as "varx" can also be used as "VaRx" in the code. However, this is confusing and misleading and should be avoided.

Importance: Medium

Example

A POU ‎PLC_PRG‎ and a POU ‎fnc‎ (function) exist in the device tree.

PROGRAM PLC_PRG
VAR
	iVar: INT;
	_123test_var_: INT;
END_VAR

ivar := iVar + 1;                   // SA0029
_123TEST_var_ := _123test_var_; 	   // SA0029
Fnc();                              // SA0029

--> SA0029: Notation in code (ivar) must equal declaration (iVar)
--> SA0029: Notation in code (_123TEST_var_) must equal declaration (_123test_var_)
--> SA0029: Notation in code (Fnc) must equal declaration (fnc)