Misra: Add rule 5.4
This commit is contained in:
parent
c56926f4bd
commit
11621b2b36
|
@ -17,6 +17,9 @@ void misra_5_1() {
|
||||||
int a1234567890123456789012345678901; // 5.1
|
int a1234567890123456789012345678901; // 5.1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define m54_12345678901234567890123456 1 // no-warning
|
||||||
|
#define m54_1234567890123456789012345678 2 // 5.4
|
||||||
|
|
||||||
#define m55(x,y) (x+y)
|
#define m55(x,y) (x+y)
|
||||||
int m55; // 5.5
|
int m55; // 5.5
|
||||||
|
|
||||||
|
|
|
@ -273,6 +273,11 @@ def misra_5_1(data):
|
||||||
if token.isName and len(token.str) > 31:
|
if token.isName and len(token.str) > 31:
|
||||||
reportError(token, 5, 1)
|
reportError(token, 5, 1)
|
||||||
|
|
||||||
|
def misra_5_4(data):
|
||||||
|
for dir in data.directives:
|
||||||
|
if re.match(r'#define [a-zA-Z0-9_]{32,}', dir.str):
|
||||||
|
reportError(dir, 5, 4)
|
||||||
|
|
||||||
def misra_5_5(data):
|
def misra_5_5(data):
|
||||||
macroNames = []
|
macroNames = []
|
||||||
for dir in data.directives:
|
for dir in data.directives:
|
||||||
|
@ -959,6 +964,7 @@ for arg in sys.argv[1:]:
|
||||||
print('Checking ' + arg + ', config "' + cfg.name + '"...')
|
print('Checking ' + arg + ', config "' + cfg.name + '"...')
|
||||||
|
|
||||||
misra_5_1(cfg)
|
misra_5_1(cfg)
|
||||||
|
misra_5_4(cfg)
|
||||||
misra_5_5(cfg)
|
misra_5_5(cfg)
|
||||||
if cfgNumber == 1:
|
if cfgNumber == 1:
|
||||||
misra_7_1(data.rawTokens)
|
misra_7_1(data.rawTokens)
|
||||||
|
|
Loading…
Reference in New Issue