SA0028 : chevauchement des zones de mémoire
Détecte les lignes de code où deux ou plusieurs variables réservent la même mémoire.
Justification : Lorsque deux variables réservent la même mémoire, le code peut se comporter avec des résultats inattendus. Cette situation doit être évitée à tout prix. Si vous ne pouvez pas éviter d'utiliser une valeur dans différentes interprétations (par exemple, une fois comme DINT
et une autre fois comme REAL
), alors vous devez définir un UNION
. Vous pouvez également utiliser un pointeur pour accéder à une valeur d'un type différent sans que la valeur soit convertie.
Importance : Élevée
PROGRAM PLC_PRG VAR iVvar1 AT %QB21: INT; dwVar2 AT %QD5: DWORD; END_VAR
Sortie dans le messages voir:
Les variables suivantes accèdent à la même mémoire :
SA0028 : iVar1 À %QB21
SA0028 : dwVar2 À %QD5
Pour plus d'informations, voir :