![]() |
![]() |
4528 | ![]() |
||||
![]() | |||||||
| Arithmetic type - Operands | |||||||
This message is issued whenever an expression of essentially enum type has been used as an operand of a logical operator. For example:
/*PRQA S 1-9999 ++*/
/*PRQA S 4528 --*/
enum E {ONE, TWO};
void f4528 (enum E a)
{
if (a && TWO) /* 4528 x2*/
{
}
if (TWO || !a) /* 4528 x2 */
{
}
}
MISRA-C:2004 Rules applicable to message 4528:
| Rule 13.2 (Advisory) | Tests of a value against zero should be made explicit, unless the operand is effectively Boolean. |
![]() | ||
| QA·C Source Code Analyser 8.1
MISRA-C:2004 Compliance Module 3.2 © 2012 Programming Research. www.programmingresearch.com | Personality Groups | Glossary | Message Index | MISRA-C:2004 Rule Index | Contents |