Skip to main content

SA0145: Mögliche Verwendung einer nicht initialisierten Referenz

Ermittelt alle verwendeten Referenzvariablen, die möglicherweise vor der Verwendung nicht initialisiert und nicht durch den Operator __ISVALIDREF überprüft werden. Diese Regel wird im Implementierungsteil von POUs angewendet. Für die Deklaration gibt es die Regel SA0124.

Begründung: Eine Referenz sollte vor dem Zugriff auf Gültigkeit geprüft werden, weil es sonst beim Zugriff zu einer Zugriffsverletzung kommen kann.

Wichtigkeit: Hoch

Beispiel 116. Beispiel
PROGRAM PLC_PRG
VAR_INPUT
    ref_iTest : REFERENCE TO INT;
END_VAR
ref_iTest := 99;                        // SA0145
IF __ISVALIDREF(ref_iTest) THEN
    ref_iTest := 88;
END_IF

Ausgabe unter Ansicht Meldungen:

  • sa_icon_message.png SA0145: Möglicherweise Verwendung einer nicht initialisierten Referenz 'ref_iTest'