我的 CCS 6.1 ARM 编译器(用于 LM3Sxxxx Stellaris)抛出警告:
“MISRA 规则 12.2。在标准允许的任何评估顺序下,表达式的值应相同”
对于以下代码:
typedef struct {
...
uint32_t bufferCnt;
uint8_t buffer[100];
...
} DIAG_INTERFACE_T;
static DIAG_INTERFACE_T diagInterfaces[1];
...
DIAG_INTERFACE_T * diag = &diagInterfaces[0];
uint8_t data = 0;
diag->bufferCnt = 0;
diag->buffer[diag->bufferCnt++] = data; // line where warning is issued
...
我在我的代码中没有看到问题。是误报还是我的错误?