MISRA.INCOMPLETE.STRUCTIncomplete struct type is used. MISRA-C Rule 18.1 (required): All structure and union types shall be complete at the end of a translation unit.This rule is also covered by MISRA.INCOMPLETE.STRUCT.UNNAMED, MISRA.INCOMPLETE.UNION and MISRA.INCOMPLETE.UNION.UNNAMED. [Undefined 35] A complete declaration of the structure or union shall be included within any translation unit that reads from or writes to that structure. A pointer to an incomplete type is itself complete and is permitted, and therefore the use of opaque pointers is permitted. See section 6.1.2.5 of ISO/IEC 9899:1990 [2] for a full description of incomplete types. Examplestruct tnode * pt; /* tnode is incomplete at this point */ struct tnode { int count; struct tnode *left; struct tnode * right; }; /* type tnode is now complete */ |