Detecta si una variable de enumeración se utiliza como condición y no todos los valores
de enumeración se tratan como ramas CASE
Justificación: La programación defensiva requiere el procesamiento de todos los valores posibles de una enumeración. Si una acción no es necesaria para un valor de enumeración concreto, deberá añadir un comentario que lo indique explícitamente. De este modo, el lector del código tiene claro que el valor no se ha olvidado sin más.
Importancia: Bajo
Ejemplo
TYPE My_Enum : ( red := 1, blue := 2, green := 3, black := 4 ); END_TYPE PROGRAM PLC_PRG VAR iVar : My_Enum; xTemp : BOOL; END_VAR iVar := My_Enum.black; CASE iVar OF My_Enum.red: xTemp := FALSE; My_Enum.blue, My_Enum.green: xTemp := TRUE; ELSE xTemp := NOT xTemp; END_CASE --> SA0076: Missing enumeration constant 'black' in CASE statement