在使用对象执行框架 (OXF) 来生成符合 MISRA C 标准的代码时,必须遵循 MISRA C 规则。
下列违例与 OXF 以及使用 MISRA98 概要文件生成的代码相关。
- 规则 18(建议)- 在 RiCOSNT.h 文件中使用系统常量将违反此规则(WAIT_FAILED 和 INFINITE)。
- 规则 118(必需)- 在 RiCHdlCls.c 和 RiCOx.c 文件中使用 malloc/realloc/free 将违反此规则。
- 规则 107(必需)- 在 ricoffsetof 的定义中解除引用空指针将违反此规则。
- 规则 45(必需)- 在生成的代码中,多个位置违反此规则。在其中的某些位置,存在一个直接插入注释以说明这是已知违例,并且将说明此违例不影响代码质量的原因。
- 规则 20(必需)- 在为关系生成的代码中,有时会在声明函数之前使用这些函数。
- 规则 23(建议)- 只有在生成了与状态图和超时相关的函数但未将这些函数指定为“static”的文件中,才使用这些函数。
- 规则 107(必需)- 在生成的代码中,有多个位置引用了指针“me”,而未首先确认此指针不为 NULL。