Rileva le conversioni esplicite da tipi di dati con segno a tipi di dati senza segno e viceversa.
Giustificazione: L'uso eccessivo di conversioni di tipo può indicare che sono stati scelti tipi di dati sbagliati per le variabili. Per questo motivo, esistono linee guida di programmazione che richiedono una giustificazione esplicita per le conversioni dei tipi di dati.
Importanza: Basso
Esempio
PROGRAM PLC_PRG VAR byVar :BYTE; udiVar : UDINT; uliVar : ULINT; lwVar : LWORD; wVar : WORD; siVar : SINT; iVar : INT; diVar : DINT; liVar : LINT; END_VAR liVar := ULINT_TO_LINT(uliVar); udiVar := DINT_TO_UDINT(diVar); siVar := BYTE_TO_SINT(byVar); wVar := INT_TO_WORD(iVar); lwVar := SINT_TO_LWORD(siVar); --> SA0134: Explicit signed/unsigned conversion from type 'ULINT' to type 'LINT' --> SA0134: Explicit signed/unsigned conversion from type 'DINT' to type 'UDINT' --> SA0134: Explicit signed/unsigned conversion from type 'BYTE' to type 'SINT' --> SA0134: Explicit signed/unsigned conversion from type 'INT' to type 'WORD' --> SA0134: Explicit signed/unsigned conversion from type 'SINT' to type 'LWORD'