Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
20.1, 20.2 scopes
#1
Is rule 20.1 limited to #define and #undef directives?
Is rule 20.2 limited only to identifiers already defined in standard library?

If this is true:
Code:
void errno();
/* errono is a reserved keyword and is already defined in standard library */
/* This code is a violation of rule 20.2 only  */

int __MyVariable();
/* __MyVariable is also a reserved keyword but is not defined in standard library */
/* This code is not a violation of 20.1 nor 20.2 */
#2
Quote:Is rule 20.1 limited to #define and #undef directives?

This is limited to #define and #undef.

Quote:Is rule 20.2 limited only to identifiers already defined in standard library?

The intent is that Rule 20.2 applies to both current library identifiers and all reserved identifiers. This includes all identifiers which begin with the underscore character. This will be clarified in the next version of MISRA-C.
Posted by and on behalf of the MISRA C Working Group


Forum Jump:


Users browsing this thread: 2 Guest(s)