parent
5ac0eb100c
commit
86d0f62d36
|
@ -1386,19 +1386,23 @@ class MisraChecker:
|
||||||
|
|
||||||
skip_to = None
|
skip_to = None
|
||||||
for token in data.tokenlist:
|
for token in data.tokenlist:
|
||||||
# Skip tokens in function call body
|
|
||||||
if skip_to:
|
if skip_to:
|
||||||
if token == skip_to:
|
if token == skip_to:
|
||||||
skip_to = None
|
skip_to = None
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
# Skip tokens in function call body
|
||||||
if token.function and token.next and token.next.str == "(":
|
if token.function and token.next and token.next.str == "(":
|
||||||
skip_to = token.next.link
|
skip_to = token.next.link
|
||||||
|
# Skip tokens in initializer lists
|
||||||
|
if simpleMatch(token, '= {'):
|
||||||
|
skip_to = token.next.link
|
||||||
|
|
||||||
if token.scope.type in ('Enum', 'Class', 'Struct', 'Global'):
|
if token.scope.type in ('Enum', 'Class', 'Struct', 'Global'):
|
||||||
continue
|
continue
|
||||||
# Save end tokens from function calls in initialization
|
# Save last tokens from function calls and initializer lists in
|
||||||
if simpleMatch(token, ') ;'):
|
# initialization sequence
|
||||||
|
if simpleMatch(token, ') ;') or simpleMatch(token, '} ;'):
|
||||||
if (token.isExpandedMacro):
|
if (token.isExpandedMacro):
|
||||||
end_tokens_map[token.next.linenr].add(token.next.column)
|
end_tokens_map[token.next.linenr].add(token.next.column)
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -430,6 +430,16 @@ void misra_12_3(int a, int b, int c) { // no warning
|
||||||
misra_12_3_fn4(misra_12_3_fn7(&a1, 32), &a1);
|
misra_12_3_fn4(misra_12_3_fn7(&a1, 32), &a1);
|
||||||
misra_12_3_fn6(misra_12_3_fn5(&a1, 32), &a1);
|
misra_12_3_fn6(misra_12_3_fn5(&a1, 32), &a1);
|
||||||
misra_12_3_fn6(misra_12_3_fn7(&a1, 32), &a1);
|
misra_12_3_fn6(misra_12_3_fn7(&a1, 32), &a1);
|
||||||
|
|
||||||
|
const struct fun_t
|
||||||
|
{
|
||||||
|
int64_t x;
|
||||||
|
uint32_t y;
|
||||||
|
} moreFun[2U] =
|
||||||
|
{
|
||||||
|
{ 900000000000000LL, 0x20000UL },
|
||||||
|
{ 450000000000000LL, 0x10000UL }
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
#define MISRA12_4a 2000000000u
|
#define MISRA12_4a 2000000000u
|
||||||
|
|
Loading…
Reference in New Issue