#include /* ----------------- Example code from MISRA C:2012 begin ----------------- */ void f1 ( int32_t a ) { if ( a <= 0 ) { goto L2; /* Non-compliant */ } goto L1; /* Compliant */ if ( a == 0 ) { goto L1; /* Compliant */ } goto L2; /* Non-compliant */ L1: if ( a > 0 ) { L2: ; } } /* ------------------ Example code from MISRA C:2012 end ------------------ */ void example ( void ) { int32_t x, y; /* ----------------- Example code from MISRA C:2012 begin ----------------- */ switch ( x ) { case 0: if ( x == y ) { goto L1; /* Non-compliant */ } break; case 1: y = x; L1: ++x; break; default: break; } /* ------------------ Example code from MISRA C:2012 end ------------------ */ }