SA0016: Huecos en estructuras
Detecta brechas en estructuras o bloques de funciones causadas por los requisitos de alineación del sistema de destino establecido actualmente. Si es posible, debe eliminar los huecos recurriendo a los elementos de la estructura o rellenándolos con un elemento ficticio. Si esto no es posible, puede desactivar la regla para las estructuras afectadas mediante el analysis
pragma.
Justificación: debido a los diferentes requisitos de alineación en diferentes plataformas, puede haber un diseño diferente en la memoria para este tipo de estructuras. Luego, el código puede funcionar de manera diferente, según la plataforma.
Importancia: Baja
TYPE Unpadded_Structure : STRUCT xTest : BOOL; iTest : INT; // SA0016 byTest : BYTE; wTest : WORD; END_STRUCT END_TYPE
PROGRAM PLC_PRG VAR myStruct : Unpadded_Structure; END_VAR
myStruct.iTest := 0;
Salida en el Mensajes vista:
SA0016: La estructura 'Unpadded_Structure' debe estar rellenada (pack-mode=8)