[previous] MISRA C:2012  Rule-16.3:  (Required) [next] An unconditional break statement shall terminate every switch-clause

Example Code:


#include "misra.h"
#include "m3cmex.h"

extern int16_t rule_1603( void )
{
   switch ( s16a )
   {
   case 0:

   case 1:
      ++s16b;
      break;

   case 2:
      ++s16c;

   case 3:              /* 2003 */
      ++s16b;

   default:             /* 2003 */
      ++s16c;
   }                    /* 2020 */

   return 1;
}


QAC messages that encompass this guideline:

2003 The preceding 'switch' clause is not empty and does not end with a 'jump' statement. Execution will fall through.
2020 Final 'switch' clause does not end with an explicit 'jump' statement.



(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