aboutsummaryrefslogtreecommitdiffstats
path: root/test/hal/testbuild/pclint/waivers.lnt
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2015-03-07 14:31:16 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2015-03-07 14:31:16 +0000
commita56487ecb91b086f35b637916cd05d33432eefc6 (patch)
treea302bc867b91602676f7c2d6ec53a674770cfe41 /test/hal/testbuild/pclint/waivers.lnt
parentaa431f4c1029cb75e70368b83b8af2803a186b35 (diff)
downloadChibiOS-a56487ecb91b086f35b637916cd05d33432eefc6.tar.gz
ChibiOS-a56487ecb91b086f35b637916cd05d33432eefc6.tar.bz2
ChibiOS-a56487ecb91b086f35b637916cd05d33432eefc6.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@7732 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'test/hal/testbuild/pclint/waivers.lnt')
-rw-r--r--test/hal/testbuild/pclint/waivers.lnt69
1 files changed, 69 insertions, 0 deletions
diff --git a/test/hal/testbuild/pclint/waivers.lnt b/test/hal/testbuild/pclint/waivers.lnt
new file mode 100644
index 000000000..e6caa1612
--- /dev/null
+++ b/test/hal/testbuild/pclint/waivers.lnt
@@ -0,0 +1,69 @@
+/* MISRA checks are not performed in header files marked as libraries or
+ vendor-provided files or belonging to other subsystems.*/
+-e686 /* Silencing warning on -elib(*) */
+-elib(*) /* No checks on library files. */
++libclass(angle,ansi)
++libh(core_cm4.h)
++libh(stm32f4xx.h)
++libh(*LLD.h)
+
+/* Silencing common non-MISRA info generated by PCLint in -w3 mode. All of
+ them have been controlled. Other infos have been fixed in the code.*/
+-e526 -e537
+-e714 -e716 -e717 -e757 -e758 -e759 -e768 -e773
+-e826 -e830 -e835 -e845
+
+/* Removing *advisory* directives and rules that would negatively impact
+ code readability or not avoidable.*/
+-e970 /* Dir-4.6 */
+-e9026 /* Dir-4.9 */
+-e756 /* Rule-2.3 */
+-e9058 /* Rule-2.4 */
+-e755 /* Rule-2.5 */
+-e9003 /* Rule-8.9 */
+-e9067 /* Rule-8.11 */
+-e818 /* Rule 8.13 */
+-e9078 /* Rule-11.4 */
+-e9079 /* Rule-11.5 */
+-e904 /* Rule-15.5 */
+-e9044 /* Rule-17.8 */
+-e9016 /* Rule-18.4 */
+-e844 -e954 /* Rule-18.13 */
+-e9018 /* Rule-19.2 */
+-e9024 /* Rule-20.10 */
+
+/* Waiver Directive 2.1, Rule 1.1, Rule 1.2, assembler is allowed in some
+ modules.*/
+-e950
+
+/* Waiver Directive 4.10, PCLint is confused by the guard used in the CMSIS
+ header files, the guard is present, suppressing the noise.*/
+-e451
+
+/* Waiver Rule 2.2, PCLint marks as pure functions that contain just arm
+ code, this does not mean that those functions do nothing.*/
+-e522
+
+/* Waiver Rule 3.1, the sequence "//" is mandated by standard license
+ headers included on top of all source files. The sequence is part of the
+ license URL and cannot be removed.*/
+-e9059
+
+/* Waiver Rule 8.7, the static analyzer has no visibility of functions called
+ from asm modules.*/
+-e765
+
+/* Waiver Rule 11.6, cast from integer to pointer is very commonly used
+ when accessing peripherals where the numeric address of the registers
+ block is cast to a structure pointer.*/
+-e923
+
+/* Waiver Rule 16.3, missing break into case. It is a common occurrence and
+ thoroughly checked.*/
+-e9090
+-e616
+-e825
+
+/* Waiver Rule 21.1, this is an operating system, its identifiers are
+ equivalent in importance to compiler symbols.*/
+-e9071