#include #define false 0 #define true 1 typedef _Bool bool_t; void use_uint32 ( uint32_t u32a ); void use_uint16 ( uint16_t u16a ); void example ( void ) { int32_t s32a; uint32_t u32a; uint16_t u16a, u16b; int8_t s8a; uint8_t u8b, u8c, u8d, *pu8a, *pu8b; char cha; bool_t bla; /* ----------------- Example code from MISRA C:2012 begin ----------------- */ enum enuma { A1, A2, A3 } ena; enum enumb { B1, B2, B3 } enb; enum { K1=1, K2=128 }; uint8_t u8a = 0; /* Compliant */ bool_t flag = ( bool_t ) 0; /* Compliant */ bool_t set = true; /* Compliant */ bool_t get = ( u8b > u8c ); /* Compliant */ ena = A1; /* Compliant */ s8a = K1; /* Compliant */ u8a = 2; /* Compliant */ u8a = 2 * 24; /* Compliant */ cha += 1; /* Compliant */ pu8a = pu8b; /* Compliant */ u8a = u8b + u8c + u8d; /* Compliant */ u8a = ( uint8_t )s8a; /* Compliant */ u32a = u16a; /* Compliant */ u32a = 2U + 125U; /* Compliant */ use_uint16 ( u8a ); /* Compliant */ use_uint16 ( u8a + u16b ); /* Compliant */ u8a = 1.0f; /* Non-compliant */ bla = 0; /* Non-compliant */ cha = 7; /* Non-compliant */ u8a = 'a'; /* Non-compliant */ u8b = 1 - 2; /* Non-compliant */ u8c += 'a'; /* Non-compliant */ use_uint32 ( s32a ); /* Non-compliant */ s8a = K2; /* Non-compliant */ u16a = u32a; /* Non-compliant */ use_uint16 ( u32a ); /* Non-compliant */ /* ------------------ Example code from MISRA C:2012 end ------------------ */ } /* ----------------- Example code from MISRA C:2012 begin ----------------- */ uint8_t foo1 ( uint16_t x ) { return x; /* Non-compliant */ } /* ------------------ Example code from MISRA C:2012 end ------------------ */