From 7772ea4579a45bcf63ebd5e68be66ba1a9c72dfa Mon Sep 17 00:00:00 2001 From: Clyne Sullivan Date: Fri, 11 Nov 2016 15:02:17 -0500 Subject: chibios! --- .../test/nil/testbuild/pclint/waivers.lnt | 116 +++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 ChibiOS_16.1.5/test/nil/testbuild/pclint/waivers.lnt (limited to 'ChibiOS_16.1.5/test/nil/testbuild/pclint/waivers.lnt') diff --git a/ChibiOS_16.1.5/test/nil/testbuild/pclint/waivers.lnt b/ChibiOS_16.1.5/test/nil/testbuild/pclint/waivers.lnt new file mode 100644 index 0000000..632a01e --- /dev/null +++ b/ChibiOS_16.1.5/test/nil/testbuild/pclint/waivers.lnt @@ -0,0 +1,116 @@ +/* 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(stm32*.h) ++libh(*_lld.h) + +/* Reinforcing type checking for some critical types even if not required by + MISRA.*/ +-strong(AJX, systime_t) +-strong(AJX, rtcnt_t) +-strong(AJX, rttime_t) +-strong(AJX, syssts_t) +-strong(AJX, msg_t) +-strong(AJX, cnt_t) +-strong(AJX, ucnt_t) +-strong(AJX, tstate_t) +-strong(AJX, eventmask_t) + +/* Permitting anonymous unions.*/ ++fan + +/* 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. + Remove temporarily the following -e in order to perform extra code quality + checks.*/ +-e526 -e537 -e552 +-e611 -e613 +-e714 -e716 -e717 -e749 -e750 -e754 -e757 -e758 -e759 -e766 -e768 -e769 -e773 -e778 -e793 +-e826 -e830 -e835 -e845 + +/* Removing *advisory* directives and rules that would negatively impact + code readability or not avoidable.*/ +-e970 /* Dir-4.6 */ +-e9045 /* Dir-4.8 */ +-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 */ +-e9049 /* Rule-13.3 */ +-e9084 /* Rule-13.4 */ +-e801 /* Rule-15.1 */ +-e9011 /* Rule-15.4 */ +-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 asm + 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.4, this rule is disabled for the main() function only because + it, of course, does not have nor requires a prior declaration.*/ +-esym(9075, main) + +/* Waiver Rule 8.7, the static analyzer has no visibility of functions called + from asm modules.*/ +-e765 + +/* Waiver Rule 11.1, casts of function pointers are required by system + design.*/ +-e9074 + +/* Waiver Rule 11.3, casts among different types are required by system + design.*/ +-e740 /* Wrongly marked as 1.3 in PCLint 9.00L.*/ +-e9087 + +/* 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.1, missing break into case. It is a common occurrence and + thoroughly checked.*/ +/* Waiver Rule 16.3, missing break into case. It is a common occurrence and + thoroughly checked.*/ +-e9090 +-e9077 +-e9042 +-e616 +-e825 + +/* Waiver Rule 18.2, pointers arithmetic is required by system design and + deemed safe.*/ +/* Waiver Rule 18.3, comparisons among pointers is required by system design + and deemed safe.*/ +-e946 +-e947 + +/* Waiver Rule 21.1, this is an operating system, its identifiers are + equivalent in importance to compiler symbols.*/ +-e9071 -- cgit v1.2.3