[previous] MISRA C:2012  Rule-16.7:  (Required) [next] A switch-expression shall not have essentially Boolean type

Example Code:


#pragma PRQA_MESSAGES_OFF 2981

#include <stdbool.h>
#include "misra.h"
#include "m3cmex.h"

extern int16_t rule_1607( void )
{
   int16_t x = 0;

   switch ( u16b == 5u )           /* 0735 */
   {
   case true:
      x = 1;
      break;
   default:
      x =s16b;
      break;
   }

   return x;
}


QAC messages that encompass this guideline:

0735 Using relational or logical operators in a 'switch' expression is usually a programming error.



(c) The Motor Industry Research Association, 2012
QA C Source Code Analyser 8.1.2
MISRA C:2012 Compliance Module 1.0
© 2013 Programming Research
www.programmingresearch.com
Personality Groups | Glossary | Message Index | MISRA C:2012 Rule Index Contents