Misra: Add rule 15.7
This commit is contained in:
parent
471a9af348
commit
0052ef7437
|
@ -50,10 +50,12 @@ void misra_13_3() {
|
||||||
|
|
||||||
void misra_13_4() {
|
void misra_13_4() {
|
||||||
if (x != (y = z)) {} // 13.4
|
if (x != (y = z)) {} // 13.4
|
||||||
|
else {}
|
||||||
}
|
}
|
||||||
|
|
||||||
void misra_13_5() {
|
void misra_13_5() {
|
||||||
if (x && (y++ < 123)){} // 13.5
|
if (x && (y++ < 123)){} // 13.5
|
||||||
|
else {}
|
||||||
}
|
}
|
||||||
|
|
||||||
void misra_13_6() {
|
void misra_13_6() {
|
||||||
|
@ -73,6 +75,7 @@ void misra_14_2() {
|
||||||
|
|
||||||
void misra_14_4() {
|
void misra_14_4() {
|
||||||
if (x+4){} // 14.4
|
if (x+4){} // 14.4
|
||||||
|
else {}
|
||||||
}
|
}
|
||||||
|
|
||||||
void misra_15_1() {
|
void misra_15_1() {
|
||||||
|
@ -90,18 +93,23 @@ void misra_15_3() {
|
||||||
goto L1; // 15.3 15.1
|
goto L1; // 15.3 15.1
|
||||||
if (y!=0) {
|
if (y!=0) {
|
||||||
L1:
|
L1:
|
||||||
}
|
} else {}
|
||||||
}
|
} else {}
|
||||||
}
|
}
|
||||||
|
|
||||||
int misra_15_5() {
|
int misra_15_5() {
|
||||||
if (x!=0) {
|
if (x!=0) {
|
||||||
return 1; // 15.5
|
return 1; // 15.5
|
||||||
}
|
} else {}
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void misra_15_6() {
|
void misra_15_6() {
|
||||||
if (x!=0); // 15.6
|
if (x!=0); // 15.6
|
||||||
|
else{}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void misra_15_7() {
|
||||||
|
if (x!=0){} // 15.7
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -392,6 +392,27 @@ def misra_15_6(rawTokens):
|
||||||
if token.str != '{':
|
if token.str != '{':
|
||||||
reportError(token, 15, 6)
|
reportError(token, 15, 6)
|
||||||
|
|
||||||
|
def misra_15_7(data):
|
||||||
|
for token in data.tokenlist:
|
||||||
|
if token.str != 'if':
|
||||||
|
continue
|
||||||
|
lpar = token.next
|
||||||
|
if not lpar or lpar.str != '(':
|
||||||
|
continue
|
||||||
|
rpar = lpar.link
|
||||||
|
if not rpar or rpar.str != ')':
|
||||||
|
continue
|
||||||
|
brace1 = rpar.next
|
||||||
|
if not brace1 or brace1.str != '{':
|
||||||
|
continue
|
||||||
|
brace2 = brace1.link
|
||||||
|
if not brace2 or brace2.str != '}':
|
||||||
|
continue
|
||||||
|
else_ = brace2.next
|
||||||
|
if not else_ or else_.str != 'else':
|
||||||
|
reportError(token, 15, 7)
|
||||||
|
|
||||||
|
|
||||||
for arg in sys.argv[1:]:
|
for arg in sys.argv[1:]:
|
||||||
print('Checking ' + arg + '...')
|
print('Checking ' + arg + '...')
|
||||||
data = cppcheckdata.parsedump(arg)
|
data = cppcheckdata.parsedump(arg)
|
||||||
|
@ -426,5 +447,5 @@ for arg in sys.argv[1:]:
|
||||||
misra_15_5(cfg)
|
misra_15_5(cfg)
|
||||||
if cfgNumber == 1:
|
if cfgNumber == 1:
|
||||||
misra_15_6(data.rawTokens)
|
misra_15_6(data.rawTokens)
|
||||||
|
misra_15_7(cfg)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue