diff --git a/addons/misra.py b/addons/misra.py index e814b6cd9..fb65534f9 100755 --- a/addons/misra.py +++ b/addons/misra.py @@ -1721,7 +1721,8 @@ class MisraChecker: while not eq.isAssignmentOp and eq.astParent: eq = eq.astParent - if not eq.isAssignmentOp: + # We are only looking for initializers + if not eq.isAssignmentOp or eq.astOperand2.isName: continue if variable.isArray : diff --git a/addons/test/misra/misra-test.c b/addons/test/misra/misra-test.c index e7e377350..ed881b373 100644 --- a/addons/test/misra/misra-test.c +++ b/addons/test/misra/misra-test.c @@ -1247,7 +1247,7 @@ void misra_18_8(int x) { int buf1[10]; int buf2[sizeof(int)]; int vla[x]; // 18.8 - static const unsigned char arr18_8_1[] = UNDEFINED_ID; // 9.2 + static const unsigned char arr18_8_1[] = UNDEFINED_ID; static uint32_t enum_test_0[R18_8_ENUM_CONSTANT_0] = {0}; }