Ermittelt Lücken in Strukturen oder Funktionsbausteinen, verursacht durch die Alignment-Anforderungen
des aktuell eingestellten Zielsystems. Wenn möglich, sollten Sie die Lücken durch
Umsortieren der Strukturelemente oder durch Auffüllen mit einem Dummy-Elemententfernen.
Wenn dies nicht möglich ist, dann können Sie die Regel für die betroffenen Strukturen
durch das Pragma analysis
deaktivieren.
Begründung: durch unterschiedliche Alignment-Anforderungen auf verschiedenen Plattformen, kann es zu einem unterschiedlichen Layout im Speicher kommen für solche Strukturen. Der Code kann sich dann unterschiedlich verhalten, je nach Plattform.
Wichtigkeit: Niedrig
Beispiel
PROGRAM PLC_PRG VAR myStruct : Unpadded_Structure; END_VAR myStruct.iTest := 0; TYPE Unpadded_Structure : STRUCT xTest : BOOL; iTest : INT; // SA0016 byTest : BYTE; wTest : WORD; END_STRUCT END_TYPE --> SA0016: Struktur 'Unpadded_Structure' muss aufgefüllt werden (Pack Modus=8)