SA0042: Verwendung unterschiedlicher Zugriffspfade
Funktion | Ermittelt die Verwendung unterschiedlicher Zugriffspfade für die gleiche Variable. |
Begründung | Unterschiedlicher Zugriff auf das gleiche Element reduziert die Lesbarkeit und Wartbarkeit eines Programms. Wir empfehlen die konsequente Verwendung von {attribute 'qualified-only'} für Bibliotheken, globale Variablenlisten und Enumerationen. Dadurch wird der vollqualifizierte Zugriff erzwungen. |
Wichtigkeit | Niedrig |
Beispiele:
Im folgenden Beispiel wird SA0042 als Fehler/Warnung ausgegeben, da auf die globale Variable nGlobal einmal direkt und einmal über den GVL-Namensraum zugegriffen wird und da auf die Funktion CONCAT einmal direkt und einmal über den Bibliotheksnamensraum zugegriffen wird.
Globale Variablen:
VAR_GLOBAL
nGlobal : INT;
END_VARProgramm MAIN:
PROGRAM MAIN
VAR
sVar : STRING;
END_VARnGlobal := INT#2; // => SA0042
GVL.nGlobal := INT#3; // => SA0042
sVar := CONCAT('ab', 'cd'); // => SA0042
sVar := Tc2_Standard.CONCAT('ab', 'cd'); // => SA0042