SA0017 : Affectation inhabituelle à une variable de pointeur
Détecte les affectations à des pointeurs qui ne sont ni des adresses (ADR
opérateur, variables de pointeur) ni constantes 0
Justification : Si un pointeur se voit attribuer une valeur qui n'est pas une adresse valide, alors le déréférencement du pointeur conduit à une "exception de violation d'accès".
Importance : Élevée
Exemple 30. Exemple
PROGRAM PLC_PRG VAR pInt : POINTER TO INT; dwAddress : DWORD; END_VAR
dwAddress := dwAddress + DWORD#1; pInt := dwAddress; // SA0017
Sortie dans le messages voir:
SA0017 : Affectation inhabituelle à une variable de pointeur