blob: 11e11da303d857652abe88a01071879b9f846b56 [file] [log] [blame]
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001//-------------------------------------------------------------------------------
Gergely Korcsáka1fa54e2024-02-12 22:07:39 +01002// Copyright (c) 2018-2024, Arm Limited and Contributors. All rights reserved.
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01003//
4// SPDX-License-Identifier: BSD-3-Clause
5//
6//-------------------------------------------------------------------------------
7
8//This file contains suppression rules for CppCheck.
9//C style comments can be used.
10//
11//Each line has three parts separated by ":"
12//<message id>:<file>:<line num>
13//Where:
14// <message id> is the message id to suppress. This equals to the "id" filed
15// of the XML message record.
16// <file> Is a file name. cppcheck understands the following wildcards:
17// * matches any number of any characters
18// ? a single character
19// Note: please use '/' as directory separator.
20// <line num> The line number for which the message shall be ignored.
21//
22//Example to convert an XML record to a line in thif file:
23// <error id="invalidPrintfArgType_sint" severity="warning" msg="%d in format string (no. 1) requires &apos;int&apos; but the argument type is &apos;unsigned int&apos;." verbose="%d in format string (no. 1) requires &apos;int&apos; but the argument type is &apos;unsigned int&apos;." cwe="686">
24// <location file0="C:\work\tf-m\test\framework\test_framework.c" file="C:\work\tf-m\test\framework\test_framework.c" line="150"/>
25// </error>
26// to
27//invalidPrintfArgType_sint:*/tf-m/test/framework/test_framework.c:150
28//
29
30//This rule conflicts the our coding style document.
31variableScope
32
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010033//While cppcheck states to work fine with missing standard library files, it
34//still reports a lot of errors regarding those.
35//So, ignore these.
36missingIncludeSystem
37
38//Stos cppcheck report errors regarding supression rules. These seem to be
39//buggy.
40unmatchedSuppression
41
42//arm_cmse.h is a special system include, stop complaining about it.
43missingInclude:*/tfm_core.h:11
44missingInclude:*/tfm_secure_api.h:11
Minos Galanakisea421232019-06-20 17:11:28 +010045
Xinyu Zhang2dfef332022-10-27 19:05:56 +080046//Exclude external code which does not need to comply with guidelines
47*:*/lib/ext/*
Xinyu Zhang726aaa52021-02-20 15:56:54 +080048*:*/docs/*
49*:*/tools/*
Minos Galanakisea421232019-06-20 17:11:28 +010050*:*/bl2/ext/*
chesun0139f66372022-12-15 11:12:03 +080051*:*/platform/ext/accelerator/*
chesun0139f66372022-12-15 11:12:03 +080052*:*/platform/ext/driver/*
53*:*/platform/ext/target/*
Antonio de Angelisb1c5fa22021-12-02 16:05:29 +000054*:*/mcuboot/*
55*:*/mbedtls/*
Xinyu Zhang2dfef332022-10-27 19:05:56 +080056*:lib/ext/qcbor-src/*
Gergely Korcsáka1fa54e2024-02-12 22:07:39 +010057*:lib/ext/cmsis-src/*
Hugo L'Hostisfa96af22021-01-11 12:25:35 +000058
59//cppcheck shouldn't complain about unused function.
60unusedFunction
61
62//Variables in the following file are initialised to a specific value before being
63//modified. This is good practice and complies with TF-M guidelines. It should not
64//trigger an error.
65redundantInitialization:*/security_cnt.c