The right hand operand of a logical operator || has persistent side effects because of calling function detectError().
if ( ( detect() == VALID ) ||
( detectError() == INVALID ) )
{
up( a,b );
}
typedef enum
{
C;
}E_name;
typedef struct
{
E_name be:4;
}S_name;
S_name name;
persistent_side_effect: Expression name.be = C has persistent side effect: modifying non-local object okay.be = C.
sint16 detectError(void)
{
name.be = C;
}
I was able to solve logical operator &&, is there a solution for || operator?