MISRA Discussion Forums

Full Version: Generalized Question about #12.6 and Preprocessor Directives
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Was advisory #12.6 intended to apply to preprocessor directives at all? I only ask because the text does not specify one way or the other.
While Rule 12.6 doesn't explicitly mention expressions used in preprocessing directlves, it is intended to apply to all expressions.

In considering the question, it seems that there are two omissions from the definition of Boolean expressions in the Glossary (Appendix E), namely:
  • the 'defined' proprocessing operator produces a Boolean-by-construct value
  • a Boolean value is expected as the operand of the #if and #elif directives