![]() |
![]() |
1863 | ![]() |
||||
![]() | |||||||
| Arithmetic type - Balancing | |||||||
The operands of this equality operator are of different essential type categories; one is 'essentially signed' and the other is 'essentially unsigned'. Both essential types are of lower rank than type
int but the comparison will be performed
in type int because of integral promotion.
For example:
/*PRQA S 1-9999 ++*/
/*PRQA S 1863 --*/
void f1863 (signed char a, unsigned char b)
{
if (b == a) /* 1863 */
{
}
}
MISRA C:2012 Rules applicable to message 1863:
| Rule-10.4 (Required) | Both operands of an operator in which the usual arithmetic conversions are performed shall have the same essential type category |
![]() | ||
| QA·C Source Code Analyser 8.1
MISRA C:2012 Compliance Module 1.0 © 2012 Programming Research. www.programmingresearch.com | Personality Groups | Glossary | Message Index | MISRA C:2012 Rule Index | Contents |