SA0134: Conversiones explícitas firmadas/sin firmar
Detecta conversiones explícitas de tipos de datos firmados a tipos de datos sin firmar y viceversa
Justificación: El uso excesivo de conversiones de tipos puede indicar que se han seleccionado tipos de datos incorrectos para las variables. Por este motivo, existen pautas de programación que requieren una justificación explícita para las conversiones de tipos de datos.
Importancia: Baja
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);
Salida en el Mensajes vista:
SA0134: Conversión explícita firmada/sin firmar del tipo 'ULINT' al tipo 'LINT'
SA0134: Conversión explícita firmada/sin firmar del tipo 'DINT' al tipo 'UDINT'
SA0134: Conversión explícita firmada/sin firmar del tipo 'BYTE' al tipo 'SINT'
SA0134: Conversión explícita firmada/sin firmar del tipo 'INT' al tipo 'WORD'
SA0134: Conversión explícita firmada/sin firmar del tipo 'SINT' al tipo 'LWORD'