SA0134: Conversioni firmate/non firmate esplicite
Determina le conversioni dai tipi di dati con segno a quelli senza segno e viceversa che sono state eseguite in modo esplicito.
Giustificazione: Un uso eccessivo delle conversioni di tipo può indicare che sono stati selezionati tipi di dati errati per le variabili. Per questo motivo esistono linee guida di programmazione che richiedono una giustificazione esplicita per le conversioni del tipo di dati.
Importanza: bassa
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);
Uscita in Messaggi vista:
SA0134: Conversione esplicita con segno/senza segno dal tipo 'ULINT' al tipo 'LINT'
SA0134: Conversione esplicita con segno/senza segno dal tipo 'DINT' al tipo 'UDINT'
SA0134: Conversione esplicita con segno/senza segno dal tipo 'BYTE' al tipo 'SINT'
SA0134: Conversione esplicita con segno/senza segno dal tipo 'INT' al tipo 'WORD'
SA0134: Conversione esplicita con segno/senza segno dal tipo 'SINT' al tipo 'LWORD'