Skip to main content

SA0025: Unqualifizierte Enumerationskonstanten

Ermittelt Enumerationskonstanten, bei denen kein qualifizierter Name der Enumeration vorangestellt ist.

Begründung: Qualifizierte Zugriffe machen den Code besser lesbar und besser wartbar. Ohne das Erzwingen qualifizierter Variablennamen könnte bei Erweiterung des Programms eine weitere Enumeration eingefügt werden, die eine gleichnamige Konstante wie eine bereits existierende Enumeration enthält (siehe im Beispiel unten: „red“). Dann käme es zu einem uneindeutigen Zugriff in diesem Codestück.

Wir empfehlen in jedem Fall nur Enumerationen zu verwenden, die das Pragma {attribute 'qualified-only'} tragen.

Wichtigkeit: Mittel

Beispiel 37. Beispiel
TYPE COLOR :
    (red,
    green,
    blue);
END_TYPE
PROGRAM PLC_PRG
VAR
    myColor : COLOR;
END_VAR
myColor := COLOR.red;    // OK
myColor := red;    // SA0025

Ausgabe unter Ansicht Meldungen:

  • sa_icon_message.png SA0025: Aufzählungskonstante 'red' ist nicht qualifiziert



Fr weitere Informationen siehe: