Rule M1-0-2 (required, toolchain, non-automated)

Multiple compilers shall only be used if they have a common, defined interface. See MISRA C++ 2008 [7] Rule A1-1-2 (required, implementation / toolchain, non-automated)A warning level of the compilation process shall be set in compliance with project policies.

Rationale

If compiler enables the high warning level, then it is able to generate useful warning messages that point out potential run-time problems during compilation time. The information can be used to resolve certain errors before they occur at run-time. Note that it is common practice to turn warnings into errors. Also, note that enabling the highest compiler warning level may produce numerous useless messages during compile time. It is important that the valid warning level for the specific compiler is established in the project.


## See also
JSF December 2005 [8]: AV Rule 218 Compiler warning levels will be set in
compliance with project policies.