SA0118: Initialisierungen nicht mit Konstanten
Funktion | Ermittelt Initialisierungen, die nicht Konstanten zuweisen. |
Begründung | Initialisierungen sollten möglichst konstant sein und sich nicht auf andere Variablen beziehen. Insbesondere sollten Sie Funktionsaufrufe in der Initialisierung vermeiden, weil es dadurch zu einem Zugriff auf nicht initialisierte Daten kommen kann. |
Wichtigkeit | Mittel |
Beispiele:
Funktion F_ReturnDWORD:
FUNCTION F_ReturnDWORD : DWORDProgramm MAIN:
PROGRAM MAIN
VAR CONSTANT
c1 : DWORD := 100;
END_VAR
VAR
n1 : DWORD := c1;
n2 : DWORD := F_ReturnDWORD(); // => SA0118
n3 : DWORD := 150;
n4 : DWORD := n3; // => SA0118
END_VAR