#include void possibleIncompatibleAlignment ( void ) { /* ----------------- Example code from MISRA C:2012 begin ----------------- */ uint8_t *p1; uint32_t *p2; p2 = ( uint32_t * ) p1; /* Non-compliant */ /* ------------------ Example code from MISRA C:2012 end ------------------ */ } /* ----------------- Example code from MISRA C:2012 begin ----------------- */ extern uint32_t read_value ( void ); extern void print ( uint32_t n ); void f ( void ) { uint32_t u = read_value ( ); uint16_t *hi_p = ( uint16_t * ) &u; /* Non-compliant */ *hi_p = 0; print ( u ); } /* ------------------ Example code from MISRA C:2012 end ------------------ */ void typeQualifiers ( void ) { /* ----------------- Example code from MISRA C:2012 begin ----------------- */ const short *p; const volatile short *q; q = ( const volatile short * ) p; /* Compliant */ int * const * pcpi; const int * const * pcpci; pcpci = ( const int * const * ) pcpi; /* Non-compliant */ /* ------------------ Example code from MISRA C:2012 end ------------------ */ }