Skip to main content

SA0012: Variablen, die als Konstanten deklariert werden könnten

Ermittelt Variablen, auf die nicht schreibend zugegriffen wird und die deshalb als Konstanten deklariert werden könnten.

Begründung: Wenn eine Variable nur an der Deklarationsstelle geschrieben und sonst nur lesend verwendet wird, nimmt die statische Analyse an, dass die Variable auch nicht geändert werden soll. Eine Deklaration als Konstante führt dann erstens dazu, dass auch bei Programmänderungen überprüft wird, dass die Variable nicht verändert wird. Zweitens führt die Deklaration als Konstante unter Umständen zu schnellerem Code.

Wichtig

Wenn in einem Projekt mehrere Applikationen vorhanden sind, werden nur die Objekte unter der gerade aktiven Applikation berücksichtigt. Wenn es nur eine einzige Applikation gibt, werden auch die Objekte im allgemeinen POUs-Pool betrachtet.

Wichtigkeit: Niedrig

Beispiel 24. Beispiel
PROGRAM PLC_PRG
VAR
        iVar : INT := INT#17;
        iTest : INT;
END_VAR
iTest := iTest + iVar;   // SA0012: 'iVar' could be declared as constant

Ausgabe unter Ansicht Meldungen:

  • sa_icon_message.png SA0012: Variable 'iVar' könnte als Konstante deklariert werden