From c8d3cccc21ab2b387df8e0ced8e98eeada93b239 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Marjam=C3=A4ki?= Date: Fri, 14 Apr 2017 22:25:35 +0200 Subject: [PATCH] Misra: Add rule 20.3 --- addons/misra-test.c | 1 + addons/misra.py | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/addons/misra-test.c b/addons/misra-test.c index 8d283c2f2..51bf8f238 100644 --- a/addons/misra-test.c +++ b/addons/misra-test.c @@ -3,6 +3,7 @@ #include // 17.1 #include "path\file.h" // 20.2 +#include /*abc*/ "file.h" // 20.3 typedef unsigned char u8; diff --git a/addons/misra.py b/addons/misra.py index 7ebbfc6d1..7fa8fcf78 100644 --- a/addons/misra.py +++ b/addons/misra.py @@ -574,6 +574,14 @@ def misra_20_2(rawTokens): reportError(token, 20, 2) break +def misra_20_3(rawTokens): + for token in rawTokens: + if not simpleMatch(token, '# include'): + continue + headerToken = token.next.next + if not headerToken or not (headerToken.str.startswith('<') or headerToken.str.startswith('"')): + reportError(token, 20, 3) + if '-verify' in sys.argv[1:]: VERIFY = True @@ -642,6 +650,7 @@ for arg in sys.argv[1:]: if cfgNumber == 1: misra_20_1(data.rawTokens) misra_20_2(data.rawTokens) + misra_20_3(data.rawTokens) if VERIFY: for expected in VERIFY_EXPECTED: