3.2. Programming Language¶
3.2.1. System Programming Language and Standards¶
Special care has to be taken for coding C-code as the core functions of the BMS software rely on this language. This project uses the ISO C99 standard (a working document is for example available in [ISO07]) as a language basis.
The C programming language is very flexible. This flexibility has to be reduced to a safe language sub-set which is done by additional coding standards. Code contributed to this project MUST be compatible with MISRA C:2012 which is described in [MIRALimited13].
Abstract of System Programming Language and Standards
- The programming language of the embedded system software MUST be ISO C. 
- The programming language standard version of the embedded system software MUST be C99. 
- The source code SHOULD not make use of language extensions. 
- The source code MUST be compiled in the strictest standards way the compiler supports. 
- The source code MUST compile without any error or warning messages. 
