5.6 MISRA Compliance
Library modules source code is compliant with the ‘Required’ rule set of MISRA
2004, with the following exceptions:
Acquisition Modules of ATmega32xPB, ATtiny81x, ATtiny161x, ATtiny321x Devices | ||
---|---|---|
MISRA Rule | Definition | Remarks |
1.1 | All code shall conform to ISO 9899:1990 Programming languages – C, amended and corrected by ISO/IEC 9899/COR1:1995, ISO/IEC 9899/AMD1:1995, and ISO/IEC 9899/COR2:1996 | The compiler is configured to allow extensions |
8.5 | There shall be no definitions of objects or functions in a header file | Inline functions are used in the header files |
17.4 | Array indexing shall be the only allowed form of pointer arithmetic | The pointer of module data structures is passed as a parameter and individual object data are fetched by iterating the data structure as an array index |
Touch_key, Binding Layer, Frequency Hop Auto Tune, Frequency Hop, Scroller, 2D Touch Surface and Gesture | ||
---|---|---|
MISRA Rule | Definition | Remarks |
17.4 | Array indexing shall be the only allowed form of pointer arithmetic | The pointer of module data structures is passed as a parameter and individual object data are fetched by iterating the data structure as an array index |
Modules | ||
---|---|---|
MISRA Rule | Definition | Remarks |
1.1 | All code shall conform to ISO 9899:1990 Programming languages – C, amended and corrected by ISO/IEC 9899/COR1:1995, ISO/IEC 9899/AMD1:1995, and ISO/IEC 9899/COR2:1996 | The compiler is configured to allow extensions |
17.4 | Array indexing shall be the only allowed form of pointer arithmetic | The pointer of module data structures is passed as a parameter and individual object data are fetched by iterating the data structure as an array index |