SPI MRVL MCAL Developer PDF
SPI MRVL MCAL Developer PDF
Result Folder(s):
E:\Kat_Polyspace\650768\config\results\CP
Table of Contents
No table of contents entries found
i
Chapter 1. Polyspace Code Verification Summary
Pass/Fail
Violations 277
Pass/Fail
Proven 98.9%
Pass/Fail
Category Total
Unused variable 6
1
Developer Name:
Date Reviewed:
Comments
Approved By:
Approved Date:
2
Chapter 2. Polyspace Run-Time Checks Statistics
Run-Time Checks Summary for SPI_MRVL_MCAL - CP
Globally Proven: 98.9%
File Proven Green Red Gray Orange
Spi.c 100.0% 54 1 28 0
__polyspace_main.c 100.0% 8 0 0 0
Spi_Private.h 100.0% 6 0 0 0
Spi_Private.c 98.8% 72 2 5 1
Spi_Irq.c 92.3% 12 0 0 1
SPI_MRVL_MCAL – CP 21%
3
Chapter 3. Code Metrics
Code Metrics Summary for: SPI_MRVL_MCAL - CP
Table 3.1. Project Metrics
Number of Recursions 0
Number of Headers 20
Number of Files 4
Cyclomatic Complexity 1 .. 13
4
Maximum Stack Usage 2 .. 28
Number of Instructions 1 .. 62
5
Chapter 4. MISRA C:2012 Guidelines
MISRA C:2012 Guidelines Summary - Violations by File
File Total
E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI\src\Spi.c 73
E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI\src\Spi_Irq.c 13
E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI\src\Spi_Private.c 164
E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\SPI\src\Spi_Cfg.c 27
Total 277
32 20.1 #include directives should only be preceded by File Scope 153 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
35 20.1 #include directives should only be preceded by File Scope 154 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
36 20.1 #include directives should only be preceded by File Scope 155 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
79 20.1 #include directives should only be preceded by File Scope 156 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
63 20.1 #include directives should only be preceded by File Scope 157 0 Yes Reviewed The Header File is
6
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
65 20.1 #include directives should only be preceded by File Scope 159 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1086 2.5 A project should not contain unused macro File Scope 169 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_AR_RELEASE_MAJOR_VERSION_C autosar Coding
is not used. guidelines
1085 2.5 A project should not contain unused macro File Scope 170 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_AR_RELEASE_MINOR_VERSION_C autosar Coding
is not used. guidelines
1076 2.5 A project should not contain unused macro File Scope 171 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro autosar Coding
SPI_AR_RELEASE_REVISION_VERSION_C is guidelines
not used.
49 20.1 #include directives should only be preceded by File Scope 217 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
83 20.1 #include directives should only be preceded by File Scope 221 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
66 20.1 #include directives should only be preceded by File Scope 225 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
45 20.1 #include directives should only be preceded by File Scope 229 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
7
41 20.1 #include directives should only be preceded by File Scope 233 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
44 20.1 #include directives should only be preceded by File Scope 236 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
46 20.1 #include directives should only be preceded by File Scope 239 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
37 20.1 #include directives should only be preceded by File Scope 242 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
48 20.1 #include directives should only be preceded by File Scope 245 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
52 20.1 #include directives should only be preceded by File Scope 249 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
50 20.1 #include directives should only be preceded by File Scope 252 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
47 20.1 #include directives should only be preceded by File Scope 256 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
56 20.1 #include directives should only be preceded by File Scope 260 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
8
54 20.1 #include directives should only be preceded by File Scope 263 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
57 20.1 #include directives should only be preceded by File Scope 267 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
60 20.1 #include directives should only be preceded by File Scope 270 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
61 20.1 #include directives should only be preceded by File Scope 275 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
33 20.1 #include directives should only be preceded by File Scope 360 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
43 20.1 #include directives should only be preceded by File Scope 363 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
77 20.1 #include directives should only be preceded by File Scope 421 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
81 20.1 #include directives should only be preceded by File Scope 426 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
72 20.1 #include directives should only be preceded by File Scope 556 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
9
55 20.1 #include directives should only be preceded by File Scope 562 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines.
53 20.1 #include directives should only be preceded by File Scope 669 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
42 20.1 #include directives should only be preceded by File Scope 674 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
187 11.3 A cast shall not be performed between a pointer to Spi_ReadIB() 801 18 Yes Reviewed Typecasting is done
object type and a pointer to a different object type. as per the data width,
to the actual data.
192 11.3 A cast shall not be performed between a pointer to Spi_ReadIB() 801 49 Yes Reviewed Typecasting is done
object type and a pointer to a different object type. as per the data width,
to the actual data.
188 17.8 A function parameter should not be modified. Spi_ReadIB() 810 26 Yes Reviewed The function
Parameter DataBufferPointer is changed. Parameter is modified
in order to read/write
32/16/8 bit data.
195 18.4 The +, -, += and -= operators should not be applied Spi_ReadIB() 810 45 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order to
read/write 32/16/8 bit
data.
189 11.3 A cast shall not be performed between a pointer to Spi_ReadIB() 832 19 Yes Reviewed Typecasting is done
object type and a pointer to a different object type. as per the data width,
to the actual data.
191 11.3 A cast shall not be performed between a pointer to Spi_ReadIB() 832 51 Yes Reviewed Typecasting is done
object type and a pointer to a different object type. as per the data width,
to receive the actual
data.
194 17.8 A function parameter should not be modified. Spi_ReadIB() 841 28 Yes Reviewed The function
Parameter DataBufferPointer is changed. Parameter is modified
10
in order to read/write
32/16/8 bit data.
193 18.4 The +, -, += and -= operators should not be applied Spi_ReadIB() 841 47 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order to
read/write 32/16/8 bit
data.
197 17.8 A function parameter should not be modified. Spi_ReadIB() 861 25 Yes Reviewed The function
Parameter DataBufferPointer is changed. Parameter is modified
in order to read/write
32/16/8 bit data.
51 20.1 #include directives should only be preceded by File Scope 876 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
68 20.1 #include directives should only be preceded by File Scope 882 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
69 20.1 #include directives should only be preceded by File Scope 1010 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
58 20.1 #include directives should only be preceded by File Scope 1014 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1073 8.7 Functions and objects should not be defined with File Scope 1024 58 Yes Reviewed The ReturnTypes are
external linkage if they are referenced in only one Mentioned as per the
translation unit. Autosar Standards.
Function 'Spi_GetStatus' should have internal
linkage
71 20.1 #include directives should only be preceded by File Scope 1072 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
11
39 20.1 #include directives should only be preceded by File Scope 1075 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
34 20.1 #include directives should only be preceded by File Scope 1138 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
75 20.1 #include directives should only be preceded by File Scope 1141 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
73 20.1 #include directives should only be preceded by File Scope 1209 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
76 20.1 #include directives should only be preceded by File Scope 1213 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
59 20.1 #include directives should only be preceded by File Scope 1253 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
80 20.1 #include directives should only be preceded by File Scope 1261 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
82 20.1 #include directives should only be preceded by File Scope 1394 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
70 20.1 #include directives should only be preceded by File Scope 1408 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
12
1069 8.7 Functions and objects should not be defined with File Scope 1409 58 Yes Reviewed Function return Types
external linkage if they are referenced in only one are mentioned as per
translation unit. the Autosar standard.
Function 'Spi_DetvalidateCheck' should have
internal linkage
84 20.1 #include directives should only be preceded by File Scope 1447 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
62 20.1 #include directives should only be preceded by File Scope 1461 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1074 8.7 Functions and objects should not be defined with File Scope 1462 58 Yes Reviewed Function return Types
external linkage if they are referenced in only one are mentioned as per
translation unit. the Autosar standars
Function 'Spi_SuprtConcurrntSyncTrnsmtChck'
should have internal linkage
196 2.7 There should be no unused parameters in Spi_SuprtConcurrntSyncTrnsmtChck() 1462 58 Yes Reviewed The variables are
functions. declared as per the
Function Spi_SuprtConcurrntSyncTrnsmtChck has autosar standards.
unused parameters.
190 17.8 A function parameter should not be modified. Spi_SuprtConcurrntSyncTrnsmtChck() 1497 23 Yes Reviewed The Parameter is
Parameter LucReturnvalue is changed. changed by the
intermediate variable
in order Take that
value
38 20.1 #include directives should only be preceded by File Scope 1544 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
85 20.1 #include directives should only be preceded by File Scope 1549 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
2087 D4.1 Run-time failures shall be minimized. Spi_GetHWUnitStatus() 1607 22 Yes Reviewed The Bound is fixed by
Error: pointer is outside its bounds the configuration file.
13
2088 18.1 A pointer resulting from arithmetic on a pointer Spi_GetHWUnitStatus() 1607 22 Yes Reviewed The Bound is fixed by
operand shall address an element of the same the configuration file
array as that pointer operand.
Error: pointer is outside its bounds
78 20.1 #include directives should only be preceded by File Scope 1628 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
67 20.1 #include directives should only be preceded by File Scope 1632 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
64 20.1 #include directives should only be preceded by File Scope 1699 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
74 20.1 #include directives should only be preceded by File Scope 1703 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
40 20.1 #include directives should only be preceded by File Scope 1794 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
22 20.1 #include directives should only be preceded by File Scope 100 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
25 20.1 #include directives should only be preceded by File Scope 101 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1077 2.5 A project should not contain unused macro File Scope 105 8 Yes Reviewed The Macros are
14
declarations. defined as per the
Macro SPI_VENDOR_ID_IRQ_C is not used. Autosar coding
standards.
1084 2.5 A project should not contain unused macro File Scope 106 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_MODULE_ID_IRQ_C is not used. Autosar coding
standards.
27 20.1 #include directives should only be preceded by File Scope 140 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
23 20.1 #include directives should only be preceded by File Scope 364 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
28 20.1 #include directives should only be preceded by File Scope 368 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1104 5.9 Identifiers that define objects or functions with File Scope 370 65 Yes Reviewed Spi_Isr_RcvData
internal linkage should be unique. present in Spi_Irq.h
function Spi_Isr_RcvData conflicts with the function Is function
name Spi_Isr_RcvData (Spi_Irq.h line 104). declaration. Not a
separate function.
24 20.1 #include directives should only be preceded by File Scope 415 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
26 20.1 #include directives should only be preceded by File Scope 419 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
30 20.1 #include directives should only be preceded by File Scope 437 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
15
29 20.1 #include directives should only be preceded by File Scope 443 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
31 20.1 #include directives should only be preceded by File Scope 462 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
86 20.1 #include directives should only be preceded by File Scope 207 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
115 20.1 #include directives should only be preceded by File Scope 208 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
91 20.1 #include directives should only be preceded by File Scope 209 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
161 20.1 #include directives should only be preceded by File Scope 210 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
146 20.1 #include directives should only be preceded by File Scope 213 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1089 2.5 A project should not contain unused macro File Scope 220 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_MODULE_ID_C is not used. autosar standards.
1100 2.5 A project should not contain unused macro File Scope 221 8 Yes Reviewed The Macros are
declarations. defined as per the
16
Macro SPI_VENDOR_ID_C is not used. autosar standards.
1093 2.5 A project should not contain unused macro File Scope 222 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_INSTANCE_ID_C is not used. autosar standards.
1092 2.5 A project should not contain unused macro File Scope 242 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_TXFTLR_MASK is not used. autosar standards.
1095 2.5 A project should not contain unused macro File Scope 245 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_RXFTLR_MASK is not used. autosar standards.
1078 2.5 A project should not contain unused macro File Scope 248 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_TX_FIFO_NOT_FULL is not used. autosar standards.
1081 2.5 A project should not contain unused macro File Scope 254 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_INTERRUPT_DISABLE_MASK is not autosar standards.
used.
1091 2.5 A project should not contain unused macro File Scope 257 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_TXFIFO_EMPTY_OR_FULL_MASK is autosar standards.
not used.
1097 2.5 A project should not contain unused macro File Scope 260 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_RXFIFO_EMPTY_OR_FULL_MASK is autosar standards.
not used.
1087 2.5 A project should not contain unused macro File Scope 266 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_SR_RESET_MASK is not used. autosar standards.
1088 2.5 A project should not contain unused macro File Scope 269 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_IMR_MASTER_RESET_MASK is not autosar standards.
used.
1102 2.5 A project should not contain unused macro File Scope 272 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_ISR_RESET_MASK is not used. autosar standards.
17
1099 2.5 A project should not contain unused macro File Scope 275 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_RISR_RESET_MASK is not used. autosar standards.
1080 2.5 A project should not contain unused macro File Scope 278 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_IDR_RESET_MASK is not used. autosar standards.
1083 2.5 A project should not contain unused macro File Scope 281 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_CTRLR0_SCPH_MASK is not used. autosar standards.
1090 2.5 A project should not contain unused macro File Scope 284 8 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_CTRLR0_SCPL_MASK is not used. autosar standards.
1096 2.5 A project should not contain unused macro File Scope 316 9 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_TXFIFO_THRESHOLD_LEVEL is not autosar standards.
used.
1098 2.5 A project should not contain unused macro File Scope 319 9 Yes Reviewed The Macros are
declarations. defined as per the
Macro SPI_RXFIFO_THRESHOLD_LEVEL is not autosar standards.
used.
95 20.1 #include directives should only be preceded by File Scope 353 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
201 11.4 A conversion should not be performed between a File Scope 358 2 Yes Reviewed Typecasting is
pointer to object and an integer type. done as per the
data width, to
receive actual
data.
202 11.4 A conversion should not be performed between a File Scope 360 2 Yes Reviewed Typecasting is
pointer to object and an integer type. done as per the
data width, to
receive actual
data.
136 20.1 #include directives should only be preceded by File Scope 364 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
18
autosar Coding
guidelines
138 20.1 #include directives should only be preceded by File Scope 370 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
102 20.7 Expressions resulting from the expansion of macro File Scope 387 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards.
enclosed in parentheses.
89 20.1 #include directives should only be preceded by File Scope 393 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
100 20.1 #include directives should only be preceded by File Scope 396 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
104 20.7 Expressions resulting from the expansion of macro File Scope 410 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards.
enclosed in parentheses.
169 20.1 #include directives should only be preceded by File Scope 416 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
105 20.1 #include directives should only be preceded by File Scope 419 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
141 20.7 Expressions resulting from the expansion of macro File Scope 432 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards.
enclosed in parentheses.
88 20.1 #include directives should only be preceded by File Scope 438 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
19
guidelines
174 20.1 #include directives should only be preceded by File Scope 442 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
183 20.7 Expressions resulting from the expansion of macro File Scope 456 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards.
enclosed in parentheses.
130 20.1 #include directives should only be preceded by File Scope 461 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
107 20.1 #include directives should only be preceded by File Scope 464 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
154 20.7 Expressions resulting from the expansion of macro File Scope 478 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards.
enclosed in parentheses.
120 20.1 #include directives should only be preceded by File Scope 484 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
114 20.1 #include directives should only be preceded by File Scope 487 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
163 20.7 Expressions resulting from the expansion of macro File Scope 501 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards.
enclosed in parentheses.
116 20.1 #include directives should only be preceded by File Scope 507 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
20
guidelines
125 20.1 #include directives should only be preceded by File Scope 510 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
103 20.7 Expressions resulting from the expansion of macro File Scope 528 0 Yes Reviewed Variables are
parameters shall be enclosed in parentheses. initialized as per
Expanded macro parameter 'rettype' shall be autosar standards
enclosed in parentheses.
92 20.1 #include directives should only be preceded by File Scope 536 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
98 20.1 #include directives should only be preceded by File Scope 539 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
111 20.7 Expressions resulting from the expansion of macro File Scope 555 0 Yes Reviewed Macros are taken
parameters shall be enclosed in parentheses. as per autosar
Expanded macro parameter 'rettype' shall be standards
enclosed in parentheses.
159 20.1 #include directives should only be preceded by File Scope 563 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
122 20.1 #include directives should only be preceded by File Scope 566 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
117 20.7 Expressions resulting from the expansion of macro File Scope 582 0 Yes Reviewed Macros are taken
parameters shall be enclosed in parentheses. as per autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
109 20.1 #include directives should only be preceded by File Scope 589 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
21
guidelines
119 20.7 Expressions resulting from the expansion of macro File Scope 594 0 Yes Reviewed Macros are taken
parameters shall be enclosed in parentheses. as per autosar
Expanded macro parameter 'vartype' shall be standards.
enclosed in parentheses.
1075 8.7 Functions and objects should not be defined with File Scope 605 2 Yes Reviewed Data Types are
external linkage if they are referenced in only one mentioned as per
translation unit. autosar standards.
Variable 'Spi_Extbufr' should have internal linkage
1068 8.7 Functions and objects should not be defined with File Scope 608 24 Yes Reviewed Data Types are
external linkage if they are referenced in only one mentioned as per
translation unit. autosar standards.
Variable 'Spi_pEBbuffer_t' should have internal
linkage
134 20.1 #include directives should only be preceded by File Scope 612 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
230 D4.5 Identifiers in the same name space with overlapping File Scope 617 21 Yes Reviewed LenResult is used
visibility should be typographically unambiguous. as Function
Identifiers "Lenresult" (Spi_Private.h line 747) and argument.
"LenResult" (Spi_Private.c line 617) differ by a
mixture of case.
129 20.1 #include directives should only be preceded by File Scope 625 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
123 20.1 #include directives should only be preceded by File Scope 629 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
124 20.1 #include directives should only be preceded by File Scope 638 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
113 20.1 #include directives should only be preceded by File Scope 671 0 Yes Reviewed The Header File is
Included as per the
22
preprocessor directives or comments. autosar Coding
guidelines
2918 D4.1 Run-time failures shall be minimized. Spi_HwInit() 803 51 No Reviewed The global
Warning: pointer may be outside its bounds constant pointer is
used to access the
structure which is
used for
configuration.
2919 18.1 A pointer resulting from arithmetic on a pointer Spi_HwInit() 803 51 Yes Reviewed The global
operand shall address an element of the same array constant pointer is
as that pointer operand. used to access the
Warning: pointer may be outside its bounds structure which is
used for
configuration.
108 20.1 #include directives should only be preceded by File Scope 825 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
87 20.1 #include directives should only be preceded by File Scope 831 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
121 20.1 #include directives should only be preceded by File Scope 871 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
151 20.1 #include directives should only be preceded by File Scope 874 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1072 8.7 Functions and objects should not be defined with File Scope 875 48 Yes Reviewed ReturnTypes are
external linkage if they are referenced in only one defined as per
translation unit. autosar standards.
Function 'Spi_Queue' should have internal linkage
110 20.1 #include directives should only be preceded by File Scope 927 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
23
guidelines
127 20.1 #include directives should only be preceded by File Scope 941 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
131 20.1 #include directives should only be preceded by File Scope 966 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
132 20.1 #include directives should only be preceded by File Scope 980 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
133 20.7 Expressions resulting from the expansion of macro File Scope 981 0 Yes Reviewed Macros are Taken
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
93 20.1 #include directives should only be preceded by File Scope 991 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
142 20.1 #include directives should only be preceded by File Scope 1005 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
106 20.7 Expressions resulting from the expansion of macro File Scope 1006 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
140 20.1 #include directives should only be preceded by File Scope 1020 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
144 20.1 #include directives should only be preceded by File Scope 1023 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
24
guidelines
164 20.7 Expressions resulting from the expansion of macro File Scope 1040 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
137 20.1 #include directives should only be preceded by File Scope 1107 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
96 20.1 #include directives should only be preceded by File Scope 1111 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
143 20.7 Expressions resulting from the expansion of macro File Scope 1121 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
167 20.1 #include directives should only be preceded by File Scope 1134 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
139 20.1 #include directives should only be preceded by File Scope 1138 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
94 20.7 Expressions resulting from the expansion of macro File Scope 1155 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
112 20.1 #include directives should only be preceded by File Scope 1249 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
97 20.1 #include directives should only be preceded by File Scope 1252 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
25
guidelines
145 20.7 Expressions resulting from the expansion of macro File Scope 1261 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
135 20.1 #include directives should only be preceded by File Scope 1270 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
156 20.1 #include directives should only be preceded by File Scope 1273 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
152 20.7 Expressions resulting from the expansion of macro File Scope 1291 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
168 20.1 #include directives should only be preceded by File Scope 1387 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
172 20.1 #include directives should only be preceded by File Scope 1390 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
180 20.7 Expressions resulting from the expansion of macro File Scope 1399 0 Yes Reviewed Macros are written
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'rettype' shall be standards.
enclosed in parentheses.
2085 D4.1 Run-time failures shall be minimized. Spi_Intrnl_GetNumofChnlsInJob() 1411 38 Yes Reviewed The global
Error: pointer is outside its bounds constant pointer is
used to access the
structure which is
used for
configuration
2086 18.1 A pointer resulting from arithmetic on a pointer Spi_Intrnl_GetNumofChnlsInJob() 1411 38 Yes Reviewed The global
operand shall address an element of the same array constant pointer is
26
as that pointer operand. used to access the
Error: pointer is outside its bounds structure which is
used for
configuration.
182 20.1 #include directives should only be preceded by File Scope 1422 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
126 20.1 #include directives should only be preceded by File Scope 1425 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1070 8.7 Functions and objects should not be defined with File Scope 1438 49 Yes Reviewed Return types are
external linkage if they are referenced in only one mentioned as per
translation unit. autosar standards
Function 'Spi_TotalJobLenchck' should have
internal linkage
147 20.1 #include directives should only be preceded by File Scope 1485 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
150 20.1 #include directives should only be preceded by File Scope 1489 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
149 20.1 #include directives should only be preceded by File Scope 1541 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
153 20.1 #include directives should only be preceded by File Scope 1545 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
203 11.4 A conversion should not be performed between a Spi_WriteFifo() 1634 4 Yes Reviewed Typecasting is
pointer to object and an integer type. done as per the
data width, to
receive actual
27
data.
198 D4.6 Typedefs that indicate size and signedness should Spi_WriteFifo() 1634 14 Yes Reviewed We are used type
be used in place of the basic numerical types. defination for
"Unsigned int" doesn't provide information about its typecasting.
size. Define and use typedefs clarifying type and
size for numerical types or use one of the exact-
width numerical types defined in <stdint.h>.
211 11.4 A conversion should not be performed between a Spi_WriteFifo() 1639 4 Yes Reviewed Typecasting is
pointer to object and an integer type. done as per the
data width, to
receive actual
data.
199 D4.6 Typedefs that indicate size and signedness should Spi_WriteFifo() 1639 14 Yes Reviewed We are used type
be used in place of the basic numerical types. defination for
"Unsigned int" doesn't provide information about its typecasting.
size. Define and use typedefs clarifying type and
size for numerical types or use one of the exact-
width numerical types defined in <stdint.h>.
155 20.1 #include directives should only be preceded by File Scope 1774 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
158 20.1 #include directives should only be preceded by File Scope 1777 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
179 20.1 #include directives should only be preceded by File Scope 1931 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
128 20.1 #include directives should only be preceded by File Scope 1935 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
90 20.1 #include directives should only be preceded by File Scope 1989 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
28
guidelines
185 20.1 #include directives should only be preceded by File Scope 1992 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
175 20.1 #include directives should only be preceded by File Scope 2028 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
99 20.1 #include directives should only be preceded by File Scope 2031 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
162 20.1 #include directives should only be preceded by File Scope 2243 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
118 20.1 #include directives should only be preceded by File Scope 2246 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
165 20.7 Expressions resulting from the expansion of macro File Scope 2258 0 Yes Reviewed Macros are
parameters shall be enclosed in parentheses. Initialized as per
Expanded macro parameter 'rettype' shall be the autosar
enclosed in parentheses. standards.
170 20.1 #include directives should only be preceded by File Scope 2294 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
157 20.1 #include directives should only be preceded by File Scope 2301 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
205 17.8 A function parameter should not be modified. Spi_IBwrite32BitData() 2330 27 Yes Reviewed The parameter is
Parameter ulIBWriteEndindex is changed. updated in order to
read/write 32/16/8
29
bit data.
212 17.8 A function parameter should not be modified. Spi_IBwrite32BitData() 2335 18 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
214 17.8 A function parameter should not be modified. Spi_IBwrite32BitData() 2340 23 Yes Reviewed The parameter is
Parameter ucpIbBufferData is changed. updated in order to
read/write 32/16/8
bit data.
224 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite32BitData() 2340 40 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
210 17.8 A function parameter should not be modified. Spi_IBwrite32BitData() 2342 21 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
209 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite32BitData() 2342 36 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
213 17.8 A function parameter should not be modified. Spi_IBwrite32BitData() 2350 22 Yes Reviewed The parameter is
Parameter ucpIbBufferData is changed. updated in order to
read/write 32/16/8
bit data.
226 17.8 A function parameter should not be modified. Spi_IBwrite32BitData() 2352 21 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
217 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite32BitData() 2352 36 Yes Reviewed The Header File is
to an expression of pointer type. Included as per the
autosar Coding
guidelines
148 20.1 #include directives should only be preceded by File Scope 2358 0 Yes Reviewed The Header File is
Included as per the
30
preprocessor directives or comments. autosar Coding
guidelines
171 20.1 #include directives should only be preceded by File Scope 2364 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
206 17.8 A function parameter should not be modified. Spi_IBwrite16BitData() 2392 27 Yes Reviewed The parameter is
Parameter ulIBWriteEndindex is changed. updated in order to
read/write 32/16/8
bit data.
231 17.8 A function parameter should not be modified. Spi_IBwrite16BitData() 2397 18 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
216 17.8 A function parameter should not be modified. Spi_IBwrite16BitData() 2402 22 Yes Reviewed The parameter is
Parameter ucpIbBufferData is changed. updated in order to
read/write 32/16/8
bit data.
218 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite16BitData() 2402 39 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
200 17.8 A function parameter should not be modified. Spi_IBwrite16BitData() 2403 20 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
220 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite16BitData() 2403 35 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
221 17.8 A function parameter should not be modified. Spi_IBwrite16BitData() 2412 22 Yes Reviewed The parameter is
Parameter ucpIbBufferData is changed. updated in order to
read/write 32/16/8
bit data.
31
222 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite16BitData() 2412 39 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
207 17.8 A function parameter should not be modified. Spi_IBwrite16BitData() 2413 20 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
208 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite16BitData() 2413 35 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
184 20.1 #include directives should only be preceded by File Scope 2419 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
173 20.1 #include directives should only be preceded by File Scope 2425 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
229 17.8 A function parameter should not be modified. Spi_IBwrite8BitData() 2451 27 Yes Reviewed The parameter is
Parameter ulIBWriteEndindex is changed. updated in order to
read/write 32/16/8
bit data.
223 17.8 A function parameter should not be modified. Spi_IBwrite8BitData() 2458 22 Yes Reviewed The parameter is
Parameter ucpIbBufferData is changed. updated in order to
read/write 32/16/8
bit data.
228 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite8BitData() 2458 39 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
233 17.8 A function parameter should not be modified. Spi_IBwrite8BitData() 2467 23 Yes Reviewed The parameter is
Parameter ucpIbBufferData is changed. updated in order to
32
read/write 32/16/8
bit data.
215 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite8BitData() 2467 40 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
225 17.8 A function parameter should not be modified. Spi_IBwrite8BitData() 2468 21 Yes Reviewed The parameter is
Parameter DataBufferPtr is changed. updated in order to
read/write 32/16/8
bit data.
204 18.4 The +, -, += and -= operators should not be applied Spi_IBwrite8BitData() 2468 36 Yes Reviewed The arithmetic
to an expression of pointer type. operation is
performed in order
to read/write
32/16/8 bit data.
176 20.1 #include directives should only be preceded by File Scope 2474 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
160 20.1 #include directives should only be preceded by File Scope 2479 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1071 8.7 Functions and objects should not be defined with File Scope 2489 51 Yes Reviewed Return Types are
external linkage if they are referenced in only one mentioned as per
translation unit. the autosar
Function 'Spi_AnyJobsshared' should have internal standards.
linkage
227 10.8 The value of a composite expression shall not be Spi_AnyJobsshared() 2535 9 Yes Reviewed Type casting is
cast to a different essential type category or a wider done as per the
essential type. return type of the
The value of the composite expression of essential function.
type category Boolean shall not be cast to the
different essential type category unsigned.
234 10.5 The value of an expression should not be cast to an Spi_AnyJobsshared() 2535 9 Yes Reviewed Type casting is
inappropriate essential type. done as per the
33
return type of the
function.
177 20.1 #include directives should only be preceded by File Scope 2540 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
101 20.1 #include directives should only be preceded by File Scope 2543 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
178 20.1 #include directives should only be preceded by File Scope 2595 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
181 20.1 #include directives should only be preceded by File Scope 2599 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
219 10.5 The value of an expression should not be cast to an Spi_Ssi_IsTransmissionDone() 2615 9 Yes Reviewed The Header File is
inappropriate essential type. Included as per the
autosar Coding
guidelines
232 10.8 The value of a composite expression shall not be Spi_Ssi_IsTransmissionDone() 2615 9 Yes Reviewed Type casting is
cast to a different essential type category or a wider done as per the
essential type. return type of the
The value of the composite expression of essential function.
type category Boolean shall not be cast to the
different essential type category unsigned.
166 20.1 #include directives should only be preceded by File Scope 2625 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1 20.1 #include directives should only be preceded by File Scope 65 0 Yes Reviewed The Header File is
34
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
1079 2.5 A project should not contain unused macro File Scope 70 8 Yes Reviewed Macros are defined
declarations. as per the autosar
Macro SPI_VENDOR_ID_CFG_C is not used. stanadrds.
1103 2.5 A project should not contain unused macro File Scope 71 8 Yes Reviewed Macros are defined
declarations. as per the autosar
Macro SPI_MODULE_ID_CFG_C is not used. stanadrds.
1101 2.5 A project should not contain unused macro File Scope 73 8 Yes Reviewed Macros are defined
declarations. as per the autosar
Macro stanadrds.
SPI_AR_RELEASE_MAJOR_VERSION_CFG_C is
not used.
1082 2.5 A project should not contain unused macro File Scope 74 8 Yes Reviewed Macros are defined
declarations. as per the autosar
Macro stanadrds.
SPI_AR_RELEASE_MINOR_VERSION_CFG_C is
not used.
1094 2.5 A project should not contain unused macro File Scope 75 8 Yes Reviewed Macros are defined
declarations. as per the autosar
Macro stanadrds.
SPI_AR_RELEASE_REVISION_VERSION_CFG_C
is not used.
18 20.1 #include directives should only be preceded by File Scope 83 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
3 20.7 Expressions resulting from the expansion of macro File Scope 86 0 Yes Reviewed Macros taken as
parameters shall be enclosed in parentheses. per autosar
Expanded macro parameter 'consttype' shall be standards.
enclosed in parentheses.
19 20.1 #include directives should only be preceded by File Scope 132 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
35
17 20.1 #include directives should only be preceded by File Scope 135 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
16 20.7 Expressions resulting from the expansion of macro File Scope 137 0 Yes Reviewed Macros are Taken
parameters shall be enclosed in parentheses. as per the Autosar
Expanded macro parameter 'ptrtype' shall be standards.
enclosed in parentheses.
4 20.1 #include directives should only be preceded by File Scope 148 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
5 20.1 #include directives should only be preceded by File Scope 151 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
13 20.7 Expressions resulting from the expansion of macro File Scope 154 0 Yes Reviewed Macros are Taken
parameters shall be enclosed in parentheses. as per the Autosar
Expanded macro parameter 'consttype' shall be standards.
enclosed in parentheses.
9 20.1 #include directives should only be preceded by File Scope 178 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
8 20.1 #include directives should only be preceded by File Scope 181 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
10 20.7 Expressions resulting from the expansion of macro File Scope 184 0 Yes Reviewed Macros are Taken
parameters shall be enclosed in parentheses. as per the Autosar
Expanded macro parameter 'consttype' shall be standards.
enclosed in parentheses.
186 D1.1 Any implementation-defined behaviour on which the File Scope 213 4 Yes Reviewed Conversion done as
output of the program depends shall be documented per the requirement.
and understood.
Conversion of integer to floating-point number uses
an implementation-defined direction of rounding in
36
some cases.
12 20.1 #include directives should only be preceded by File Scope 222 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
2 20.1 #include directives should only be preceded by File Scope 225 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
7 20.7 Expressions resulting from the expansion of macro File Scope 228 0 Yes Reviewed Macros are taken
parameters shall be enclosed in parentheses. as per the Autosar
Expanded macro parameter 'ptrtype' shall be standards.
enclosed in parentheses.
11 20.1 #include directives should only be preceded by File Scope 238 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
6 20.1 #include directives should only be preceded by File Scope 241 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
14 20.7 Expressions resulting from the expansion of macro File Scope 244 0 Yes Reviewed Macros are taken
parameters shall be enclosed in parentheses. as per the autosar
Expanded macro parameter 'consttype' shall be standards.
enclosed in parentheses.
15 20.1 #include directives should only be preceded by File Scope 266 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
20 20.1 #include directives should only be preceded by File Scope 270 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
guidelines
21 20.1 #include directives should only be preceded by File Scope 299 0 Yes Reviewed The Header File is
preprocessor directives or comments. Included as per the
autosar Coding
37
guidelines
38
Chapter 5. Polyspace Run-Time Checks Results
Proven Run-Time Violations
Table 5.1. E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI\src\Spi.c
2575 Illegally dereferenced Spi_GetHWUnitStatus() 1607 22 Error: pointer is outside its Yes Justified Refer_SPI_c_Poly_REF_3
pointer bounds
2066 Non-terminating loop Spi_HwInit() 798 2 The loop is infinite or contains a Yes Justified Refer_SPI_c_Poly_REF_7
run-time error.
1989 Illegally dereferenced Spi_Intrnl_GetNumofChnlsInJob() 1411 38 Error: pointer is outside its Yes Justified Refer_SPI_c_Poly_REF_3
pointer bounds
1384 Unreachable code Spi_Init() 303 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 302 (column 6).
Block ends at line 309 (column
2)
1386 Unreachable code Spi_Init() 335 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 334 (column 6).
Block ends at line 343 (column
39
2)
1388 Unreachable code Spi_Init() 350 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 350 (column 7).
1638 Unreachable code Spi_DeInit() 391 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 380 (column 7).
1640 Unreachable code Spi_DeInit() 401 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 400 (column 6).
Block ends at line 413 (column
2)
1504 Unreachable code Spi_WriteIB() 473 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 461 (column 7).
2660 Unreachable code Spi_WriteIB() 500 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 499 (column 5).
Block ends at line 547 (column
3)
1563 Unreachable code Spi_AsyncTransmit() 605 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 593 (column 7).
1568 Unreachable code Spi_AsyncTransmit() 621 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
40
If-condition always evaluates to
false at line 620 (column 7).
Block ends at line 645 (column
2)
1577 Unreachable code Spi_AsyncTransmit() 652 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 651 (column 7).
Block ends at line 660 (column
2)
1390 Unreachable code Spi_ReadIB() 732 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 719 (column 5).
1406 Unreachable code Spi_ReadIB() 774 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 773 (column 5).
Block ends at line 866 (column
3)
1253 Unreachable code Spi_SetupEB() 928 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 914 (column 6).
2550 Unreachable code Spi_SetupEB() 958 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 957 (column 7).
Block ends at line 975 (column
2)
2559 Unreachable code Spi_SetupEB() 984 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
41
If-condition always evaluates to
false at line 983 (column 5).
Block ends at line 1002 (column
2)
1227 Unreachable code Spi_GetJobResult() 1110 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 1097 (column 6).
1232 Unreachable code Spi_GetJobResult() 1126 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1125 (column 5).
Block ends at line 1130 (column
2)
1251 Unreachable code Spi_GetVersionInfo() 1235 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1234 (column 6).
Block ends at line 1241 (column
2)
1589 Unreachable code Spi_SyncTransmit() 1295 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1294 (column 6).
Block ends at line 1323 (column
2)
1610 Unreachable code Spi_SyncTransmit() 1331 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1330 (column 6).
Block ends at line 1342 (column
2)
2702 Unreachable code Spi_SyncTransmit() 1353 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
42
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1352 (column 6).
Block ends at line 1385 (column
2)
1495 Unreachable code Spi_DetvalidateCheck() 1430 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 1418 (column 7).
1646 Unreachable code Spi_SuprtConcurrntSyncTrnsmtChck() 1483 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1482 (column 6).
Block ends at line 1505 (column
2)
1334 Unreachable code Spi_GetHWUnitStatus() 1589 7 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 1575 (column 7).
1303 Unreachable code Spi_MainFunction_Handling() 1662 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1661 (column 7).
Block ends at line 1695 (column
2)
1354 Unreachable code Spi_SetAsyncMode() 1746 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 1733 (column 7).
1356 Unreachable code Spi_SetAsyncMode() 1751 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
43
If-condition always evaluates to
false at line 1750 (column 7).
Block ends at line 1767 (column
2)
1369 Unreachable code Spi_SetAsyncMode() 1774 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 1773 (column 7).
Block ends at line 1785 (column
2)
2000 Unreachable code Spi_HwInit() 720 4 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 719 (column 8).
Block ends at line 732 (column
4)
2040 Unreachable code Spi_HwInit() 759 6 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
false at line 758 (column 10).
Block ends at line 761 (column
6)
2035 Unreachable code Spi_HwInit() 768 6 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 762 (column 14).
Block ends at line 770 (column
6)
2017 Unreachable code Spi_HwInit() 773 9 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
44
If-condition always evaluates to
true at line 746 (column 8).
1985 Unreachable code Spi_Intrnl_GetNumofChnlsInJob() 1415 2 The section of code is Yes Justified Refer_SPI_c_Poly_REF_1
unreachable or the condition is
redundant.
If-condition always evaluates to
true at line 1407 (column 7).
1694 Non-initialized Spi_Isr_RcvData() 388 14 Warning: variable may be non- Yes Justified Refer_SPI_c_Poly_REF_6
variable initialized (type: unsigned int 32)
1992 Illegally dereferenced Spi_HwInit() 803 51 Warning: pointer may be outside Yes Justified Refer_SPI_c_Poly_REF_3
pointer its bounds
45
Chapter 6. Global Variables
Variable Checks for: SPI_MRVL_MCAL - CP
Unused variable
Table 6.1. E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI\src\Spi_Private.c
2837 There exists no reachable operation on variable 595 16 Reviewed The object is is used one time in
'Spi_Private.Spi_ExtrnlHwDeviceCfg'. the file
2834 There exists no reachable operation on variable 605 2 Reviewed The object is is used one time in
'Spi_Private.Spi_Extbufr'. the file
2841 There exists no reachable operation on variable 608 24 Reviewed The object is is used one time in
'Spi_Private.Spi_pEBbuffer_t'. the file
2735 There exists no reachable operation on variable 138 33 Reviewed The object is is used one time in
'Spi_Cfg.Spi_ChannelAssignmentlist0'. the file
2721 There exists no reachable operation on variable 229 29 Reviewed The object is is used one time in
'Spi_Cfg.Spi_JobAssignmentList0'. the file.
2711 There exists no reachable operation on variable 245 43 Reviewed The object is is used one time in
'Spi_Cfg.Spi_SequenceConfig'. the file
2514 Operations on variable 'Spi.Spi_Driverstatus' do not interfere with 219 55 Reviewed The Global variable are used in
each other. Multiple functions .
2513 Operations on variable 'Spi.Spi_pCfg' do not interfere with each 234 68 Reviewed The Global variable are used in
46
other. Multiple functions.
2515 Operations on variable 'Spi.Spi_Unit' do not interfere with each 240 58 Reviewed The Global variable are used in
other. Multiple functions.
2509 Operations on variable 'Spi.Spi_Jobunit' do not interfere with each 247 16 Reviewed The Global variable are used in
other. Multiple functions.
2511 Operations on variable 'Spi.Spi_SeqUnit' do not interfere with each 254 28 Reviewed The Global variable are used in
other. Multiple functions.
2526 Operations on variable 'Spi.Spi_Ibbufferacss' do not interfere with 261 66 Reviewed The Global variable are used in
each other. Multiple functions.
2529 Operations on variable 'Spi.Spi_Global' do not interfere with each 268 59 Reviewed The Global variable are used in
other. Multiple functions.
2833 Operations on variable 'Spi_Private.Spi_pHwunit' do not interfere 355 38 Reviewed The Global variable are used in
with each other. Multiple functions...
2736 Operations on variable 'Spi_Cfg.Spi_JobConfig' do not interfere with 154 76 Reviewed Modification on Internal
each other. structure member will show an
effect on the entire structure.
2729 Operations on variable 'Spi_Cfg.Spi_Config' do not interfere with 273 66 Reviewed Modification on Internal
each other. structure member will show an
effect on the entire structure...
47
Chapter 7. Appendix 1 - Configuration Settings
Polyspace Settings
Opti Value
on
- auto.build
auth
or
- True
cod
e-
metr
ics
- Arm clang
com
piler
- 02/03/2023
date
-do- all-headers
not-
gen
erat
e-
resu
lts-
for
-I E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Input,E:\Kat_Polyspace\65076
8\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Input\Customer_Inputs,E:\Kat_Polyspace\65076
8\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Input\Kickoff_Initiation,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Input\KPIT_Inputs,E:\Kat_Polysp
ace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Input\Proposal,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Input\Templates and
checklists,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Bidirectional_Traceability,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad
_cortex_r52\Output\Coding,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Design,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad
_cortex_r52\Output\Documentation,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_
dev_quad_cortex_r52\Output\Requirement,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Safety_Document,E:\Kat_Polyspace\650768\config\sourcefile
s\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration,E:\Kat_Polyspace\650768\co
48
nfig\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Bidirectional_Traceability\DIO,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Bidirectional_
Traceability\PORT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Bidirectional_Traceability\WDG,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_
mcal_dev_quad_cortex_r52\Output\Coding\CAN,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\DIO,E:\Kat_Polyspace\650768\config\sourcefile
s\marvell_mcal_dev_quad_cortex_r52\Output\Coding\GPT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\I2C,E:\Kat_Polyspace\650768\config\
sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\PORT,E:\Kat_Polyspace\65
0768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS,E:\Kat_P
olyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\UART,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\W
DG,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\CAN\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\O
utput\Coding\CAN\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\DIO\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_qu
ad_cortex_r52\Output\Coding\DIO\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\GPT\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marv
ell_mcal_dev_quad_cortex_r52\Output\Coding\GPT\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\I2C\inc,E:\Kat_Polyspace\650768\config\
sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\I2C\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\MCU\inc,E:\Kat_Polyspac
e\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\MCU\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\PORT\i
nc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\PORT\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\O
utput\Coding\SPI\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\SPI\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_qua
d_cortex_r52\Output\Coding\STUBS\AsrGnrl,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\CanIf,E:\Kat_Polyspace\650768\config\sour
cefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Dem,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Det,E:\Kat_Poly
space\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\EcuM,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Codi
ng\STUBS\MemMap,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Os,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_
quad_cortex_r52\Output\Coding\STUBS\Rte,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\SysGnrl,E:\Kat_Polyspace\650768\config\so
urcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\WdgIf,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\AsrGnrl\inc,E
:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\CanIf\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52
\Output\Coding\STUBS\CanIf\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Dem\inc,E:\Kat_Polyspace\650768\config\sourcefiles\m
arvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Dem\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Det\inc,E:\Kat_Polysp
ace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Det\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Codin
g\STUBS\EcuM\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\EcuM\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_
dev_quad_cortex_r52\Output\Coding\STUBS\MemMap\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Os\inc,E:\Kat_Polyspace\650
768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Os\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS
\Rte\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\Rte\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_co
rtex_r52\Output\Coding\STUBS\SysGnrl\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\SysGnrl\src,E:\Kat_Polyspace\650768\config
\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\STUBS\WdgIf\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\UART\inc,E:\K
at_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\UART\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\C
oding\WDG\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Coding\WDG\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_c
ortex_r52\Output\Design\CAN,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Design\DIO,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_de
v_quad_cortex_r52\Output\Design\GPT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Design\I2C,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_
mcal_dev_quad_cortex_r52\Output\Design\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Design\PORT,E:\Kat_Polyspace\650768\config\sourcefi
les\marvell_mcal_dev_quad_cortex_r52\Output\Design\SPI,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Design\UART,E:\Kat_Polyspace\650768\conf
ig\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Design\WDG,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\CAN,E:\Kat_Poly
space\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\DIO,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Docum
entation\GPT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\I2C,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_
cortex_r52\Output\Documentation\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\PORT,E:\Kat_Polyspace\650768\config\sourcefil
49
es\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\SPI,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\UART,E:\Kat_Polysp
ace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Documentation\WDG,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Plannin
g\PMRP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\Project_Management,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_
quad_cortex_r52\Output\Planning\Review_Strategy,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\SDPS,E:\Kat_Polyspace\650768\config\sou
rcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.0,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.1,E:\Kat_P
olyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.2,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Pla
nning\PMRP\V1.3,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.4,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_
quad_cortex_r52\Output\Planning\PMRP\V1.5,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.6,E:\Kat_Polyspace\650768\config\so
urcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.7,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.8,E:\Kat_
Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\PMRP\V1.9,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\P
lanning\Project_Management\Estimation,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\SDPS\V1.0,E:\Kat_Polyspace\650768\config\sourcefil
es\marvell_mcal_dev_quad_cortex_r52\Output\Planning\SDPS\V1.1,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Planning\SDPS\V1.2,E:\Kat_Polysp
ace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requirement\CAN,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requireme
nt\DIO,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requirement\GPT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r
52\Output\Requirement\I2C,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requirement\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mca
l_dev_quad_cortex_r52\Output\Requirement\PORT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requirement\SPI,E:\Kat_Polyspace\650768\config\s
ourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requirement\UART,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Requirement\WDG,E:\Kat_Po
lyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\CAN,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\D
IO,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\GPT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Outp
ut\TestPlan\I2C,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cor
tex_r52\Output\TestPlan\PORT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\SPI,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_
dev_quad_cortex_r52\Output\TestPlan\UART,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\WDG,E:\Kat_Polyspace\650768\config\sourcefile
s\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\CAN\FTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\DIO\FTP,E:\Kat_Polyspace\6
50768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\DIO\UTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\GPT\F
TP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\GPT\UTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\
Output\TestPlan\I2C\FTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\I2C\UTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_d
ev_quad_cortex_r52\Output\TestPlan\PORT\FTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\PORT\UTP,E:\Kat_Polyspace\650768\config\
sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\SPI\FTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\SPI\UTP,E:\Kat_Poly
space\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\UART\FTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPl
an\UART\UTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\TestPlan\WDG\FTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad
_cortex_r52\Output\TestPlan\WDG\UTP,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\Bundle_Project,E:\Kat_Polyspace\650768\c
onfig\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuratio
n\Bundle_Project\CAN,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\Bundle_Project\DIO,E:\Kat_Polyspace\650768\config\sourcefil
es\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\Bundle_Project\GPT,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configurati
on\Bundle_Project\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\Bundle_Project\PORT,E:\Kat_Polyspace\650768\config\sour
cefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\Bundle_Project\SPI,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configu
ration\Bundle_Project\WDG,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\CAN,E:\Kat_Polyspace\650768\config\sourcefiles\
marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\DIO,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\GPT,
E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\I2C,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_corte
x_r52\Output\Tool_Configuration\QAC\MCU,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\PORT,E:\Kat_Polyspace\650768\c
onfig\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\SPI,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configur
50
ation\QAC\WDG,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\CAN\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_
mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\CAN\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\DIO\inc,E
:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\DIO\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_co
rtex_r52\Output\Tool_Configuration\QAC\GPT\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\GPT\src,E:\Kat_Polyspace\6
50768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\MCU\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\T
ool_Configuration\QAC\MCU\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\PORT\inc,E:\Kat_Polyspace\650768\config\so
urcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\PORT\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configurat
ion\QAC\SPI\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\SPI\src,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_m
cal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\WDG\inc,E:\Kat_Polyspace\650768\config\sourcefiles\marvell_mcal_dev_quad_cortex_r52\Output\Tool_Configuration\QAC\WDG\src
- C
lang
- true
mai
n-
gen
erat
or
- 8
max
-
proc
ess
es
- all
misr
a3
-O2 -O2
- SPI_MRVL_MCAL
pro
g
- E:\Kat_Polyspace\650768\config\results\CP
resu
lts-
dir
- true
stop
-if-
51
com
pile-
erro
r
- arm
targ
et
- true
tmp-
dir-
in-
resu
lts-
dir
-to pass2
- 1.0
verif
-
vers
ion
Analysis Assumptions
Assumption Issuer
Results of floating-point arithmetic are rounded foling the IEE754 rule: round to nearest, ties to even Product
Structure fields are not volatile unless the entire structure is volatile-qualified Product
Stack pointers can be safely dereferenced even outside the pointed variable's scope Product
External pointers cannot be null. They point to allocated data of sufficient size for safe dereference Product
52
D1.1 Any implementation-defined behaviour on which the output of the program depends shall be required - yes
documented and understood.
D2.1 All source files shall compile without any compilation errors. required - yes
D3.1 All code shall be traceable to documented requirements. required Not enforceable no
D4.2 All usage of assembly language should be documented. advisory Not enforceable no
D4.4 Sections of code should not be "commented out". advisory Not enforceable no
D4.5 Identifiers in the same name space with overlapping visibility should be typographically unambiguous. advisory - yes
D4.6 typedefs that indicate size and signedness should be used in place of the basic numerical types. advisory - yes
D4.7 If a function returns error information, then that error information shall be tested. required Supported in Bug Finder only no
D4.8 If a pointer to a structure or union is never dereferenced within a translation unit, then the advisory - yes
implementation of the object should be hidden.
D4.9 A function should be used in preference to a function-like macro where they are interchangeable. advisory - yes
D4.10 Precautions shall be taken in order to prevent the contents of a header file being included more than required - yes
once.
D4.11 The validity of values passed to library functions shall be checked. required - yes
D4.13 Functions which are designed to provide operations on a resource should be called in an appropriate advisory Supported in Bug Finder only no
sequence.
D4.14 The validity of values received from external sources shall be checked. required Supported in Bug Finder only no
1.1 The program shall contain no violations of the standard C syntax and constraints, and shall not exceed required - yes
the implementation's translation limits.
1.3 There shall be no occurrence of undefined or critical unspecified behaviour. required - yes
2.3 A project should not contain unused type declarations. advisory - yes
2.4 A project should not contain unused tag declarations. advisory - yes
53
2.5 A project should not contain unused macro declarations. advisory - yes
2.6 A function should not contain unused label declarations. advisory - yes
3.1 The character sequences /* and // shall not be used within a comment. required - yes
4.1 Octal and hexadecimal escape sequences shall be terminated. required - yes
5.2 Identifiers declared in the same scope and name space shall be distinct. required - yes
5.3 An identifier declared in an inner scope shall not hide an identifier declared in an outer scope. required - yes
5.8 Identifiers that define objects or functions with external linkage shall be unique. required - yes
5.9 Identifiers that define objects or functions with internal linkage should be unique. advisory - yes
6.1 Bit-fields shall only be declared with an appropriate type. required - yes
6.2 Single-bit named bit fields shall not be of a signed type. required - yes
7.2 A "u" or "U" suffix shall be applied to all integer constants that are represented in an unsigned type. required - yes
7.3 The ercase character "l" shall not be used in a literal suffix. required - yes
7.4 A string literal shall not be assigned to an object unless the object's type is "pointer to const-qualified required - yes
char".
8.2 Function types shall be in prototype form with named parameters. required - yes
8.3 All declarations of an object or function shall use the same names and type qualifiers. required - yes
8.4 A compatible declaration shall be visible when an object or function with external linkage is defined. required - yes
8.5 An external object or function shall be declared once in one and only one file. required - yes
54
8.6 An identifier with external linkage shall have exactly one external definition. required - yes
8.7 Functions and objects should not be defined with external linkage if they are referenced in only one advisory - yes
translation unit.
8.8 The static storage class specifier shall be used in all declarations of objects and functions that have required - yes
internal linkage.
8.9 An object should be defined at block scope if its identifier only appears in a single function. advisory - yes
8.10 An inline function shall be declared with the static storage class. required - yes
8.11 When an array with external linkage is declared, its size should be explicitly specified. advisory - yes
8.12 Within an enumerator list, the value of an implicitly-specified enumeration constant shall be unique. required - yes
8.13 A pointer should point to a const-qualified type whenever possible. advisory - yes
8.14 The restrict type qualifier shall not be used. required - yes
9.1 The value of an object with automatic storage duration shall not be read before it has been set. mandatory - yes
9.2 The initializer for an aggregate or union shall be enclosed in braces. required - yes
9.4 An element of an object shall not be initialized more than once. required - yes
9.5 Where designated initializers are used to initialize an array object the size of the array shall be required - yes
specified explicitly.
10.2 Expressions of essentially character type shall not be used inappropriately in addition and subtraction required - yes
operations.
10.3 The value of an expression shall not be assigned to an object with a narrower essential type or of a required - yes
different essential type category.
10.4 Both operands of an operator in which the usual arithmetic conversions are performed shall have the required - yes
same essential type category.
10.5 The value of an expression should not be cast to an inappropriate essential type. advisory - yes
10.6 The value of a composite expression shall not be assigned to an object with wider essential type. required - yes
10.7 If a composite expression is used as one operand of an operator in which the usual arithmetic required - yes
conversions are performed then the other operand shall not have wider essential type.
10.8 The value of a composite expression shall not be cast to a different essential type category or a wider required - yes
essential type.
55
11.1 Conversions shall not be performed between a pointer to a function and any other type. required - yes
11.2 Conversions shall not be performed between a pointer to an incomplete type and any other type. required - yes
11.3 A cast shall not be performed between a pointer to object type and a pointer to a different object type. required - yes
11.4 A conversion should not be performed between a pointer to object and an integer type. advisory - yes
11.5 A conversion should not be performed from pointer to void into pointer to object. advisory - yes
11.6 A cast shall not be performed between pointer to void and an arithmetic type. required - yes
11.7 A cast shall not be performed between pointer to object and a non-integer arithmetic type. required - yes
11.8 A cast shall not remove any const or volatile qualification from the type pointed to by a pointer. required - yes
11.9 The macro NULL shall be the only permitted form of integer null pointer constant. required - yes
12.1 The precedence of operators within expressions should be made explicit. advisory - yes
12.2 The right hand operand of a shift operator shall lie in the range zero to one less than the width in bits of required - yes
the essential type of the left hand operand.
12.4 Evaluation of constant expressions should not lead to unsigned integer wrap-around. advisory - yes
12.5 The sizeof operator shall not have an operand which is a function parameter declared as "array of mandatory - yes
type".
13.1 Initializer lists shall not contain persistent side effects. required - yes
13.2 The value of an expression and its persistent side effects shall be the same under all permitted required - yes
evaluation orders.
13.3 A full expression containing an increment (++) or decrement (--) operator should have no other advisory - yes
potential side effects other than that caused by the increment or decrement operator.
13.4 The result of an assignment operator should not be used. advisory - yes
13.5 The right hand operand of a logical && or || operator shall not contain persistent side effects. required - yes
13.6 The operand of the sizeof operator shall not contain any expression which has potential side effects. mandatory - yes
14.1 A loop counter shall not have essentially floating type. required - yes
14.4 The controlling expression of an if statement and the controlling expression of an iteration-statement required - yes
shall have essentially Boolean type.
56
15.1 The goto statement should not be used. advisory - yes
15.2 The goto statement shall jump to a label declared later in the same function. required - yes
15.3 Any label referenced by a goto statement shall be declared in the same block, or in any block required - yes
enclosing the goto statement.
15.4 There should be no more than one break or goto statement used to terminate any iteration statement. advisory - yes
15.5 A function should have a single point of exit at the end. advisory - yes
15.7 All if ... else if constructs shall be terminated with an else statement. required - yes
16.2 A switch label shall only be used when the most closely-enclosing compound statement is the body of required - yes
a switch statement.
16.3 An unconditional break statement shall terminate every switch-clause. required - yes
16.4 Every switch statement shall have a default label. required - yes
16.5 A default label shall appear as either the first or the last switch label of a switch statement. required - yes
16.6 Every switch statement shall have at least two switch-clauses. required - yes
16.7 A switch-expression shall not have essentially Boolean type. required - yes
17.2 Functions shall not call themselves, either directly or indirectly. required - yes
17.4 All exit paths from a function with non-void return type shall have an explicit return statement with an mandatory - yes
expression.
17.5 The function argument corresponding to a parameter declared to have an array type shall have an advisory - yes
appropriate number of elements.
17.6 The declaration of an array parameter shall not contain the static keyword between the [ ]. mandatory - yes
17.7 The value returned by a function having non-void return type shall be used. required - yes
18.1 A pointer resulting from arithmetic on a pointer operand shall address an element of the same array as required - yes
that pointer operand.
18.2 Subtraction between pointers shall only be applied to pointers that address elements of the same required - yes
57
array.
18.3 The relational operators >, >=, < and <= shall not be applied to objects of pointer type except where required - yes
they point into the same object.
18.4 The +, -, += and -= operators should not be applied to an expression of pointer type. advisory - yes
18.5 Declarations should contain no more than two levels of pointer nesting. advisory - yes
18.6 The address of an object with automatic storage shall not be copied to another object that persists after required - yes
the first object has ceased to exist.
19.1 An object shall not be assigned or copied to an overlapping object. mandatory - yes
20.1 #include directives should only be preceded by preprocessor directives or comments. advisory - yes
20.2 The ', " or \ characters and the /* or // character sequences shall not occur in a header file name. required - yes
20.3 The #include directive shall be foled by either a <filename> or "filename"sequence. required - yes
20.4 A macro shall not be defined with the same name as a keyword. required - yes
20.6 Tokens that look like a preprocessing directive shall not occur within a macro argument. required - yes
20.7 Expressions resulting from the expansion of macro parameters shall be enclosed in parentheses. required - yes
20.8 The controlling expression of a #if or #elif preprocessing directive shall evaluate to 0 or 1. required - yes
20.9 All identifiers used in the controlling expression of #if or #elif preprocessing directives shall be required - yes
#define'd before evaluation.
20.10 The # and ## preprocessor operators should not be used. advisory - yes
20.11 A macro parameter immediately foling a # operator shall not immediately be foled by a ## operator. required - yes
20.12 A macro parameter used as an operand to the # or ## operators, which is itself subject to further macro required - yes
replacement, shall only be used as an operand to these operators.
20.13 A line whose first token is # shall be a valid preprocessing directive. required - yes
20.14 All #else, #elif and #endif preprocessor directives shall reside in the same file as the #if, #ifdef or required - yes
#ifndef directive to which they are related.
21.1 #define and #undef shall not be used on a reserved identifier or reserved macro name. required - yes
58
21.2 A reserved identifier or macro name shall not be declared. required - yes
21.3 The memory allocation and deallocation functions of <stdlib.h> shall not be used. required - yes
21.4 The standard header file <setjmp.h> shall not be used. required - yes
21.5 The standard header file <signal.h> shall not be used. required - yes
21.6 The Standard Library input/output functions shall not be used. required - yes
21.7 The atof, atoi, atol, and atoll functions of <stdlib.h> shall not be used. required - yes
21.8 The library functions abort, exit and system of <stdlib.h> shall not be used. required - yes
21.9 The library functions bsearch and qsort of <stdlib.h> shall not be used. required - yes
21.10 The Standard Library time and date functions shall not be used. required - yes
21.11 The standard header file <tgmath.h> shall not be used. required - yes
21.12 The exception handling features of <fenv.h> should not be used. advisory - yes
21.13 Any value passed to a function in <ctype.h> shall be representable as an unsigned char or be the mandatory Supported in Bug Finder only no
value EOF.
21.14 The Standard Library function memcmp shall not be used to compare null terminated strings. required Supported in Bug Finder only no
21.15 The pointer arguments to the Standard Library functions memcpy, memmove and memcmp shall be required - yes
pointers to qualified or unqualified versions of compatible types.
21.16 The pointer arguments to the Standard Library function memcmp shall point to either a pointer type, an required - yes
essentially signed type, an essentially unsigned type, an essentially Boolean type or an essentially
enum type.
21.17 Use of the string handling functions from <string.h> shall not result in accesses beyond the bounds of mandatory Supported in Bug Finder only no
the objects referenced by their pointer parameters.
21.18 The size_t argument passed to any function in <string.h> shall have an appropriate value. mandatory Supported in Bug Finder only no
21.19 The pointers returned by the Standard Library functions localeconv, getenv, setlocale or, strerror shall mandatory Supported in Bug Finder only no
only be used as if they have pointer to const-qualified type.
21.20 The pointer returned by the Standard Library functions asctime, ctime, gmtime, localtime, localeconv, mandatory Supported in Bug Finder only no
getenv, setlocale or strerror shall not be used foling a subsequent call to the same function.
22.1 All resources obtained dynamically by means of Standard Library functions shall be explicitly released. required Supported in Bug Finder only no
22.2 A block of memory shall only be freed if it was allocated by means of a Standard Library function. mandatory Supported in Bug Finder only no
22.3 The same file shall not be open for read and write access at the same time on different streams. required Supported in Bug Finder only no
22.4 There shall be no attempt to write to a stream which has been opened as read-only. mandatory Supported in Bug Finder only no
59
22.5 A pointer to a FILE object shall not be dereferenced. mandatory - yes
22.6 The value of a pointer to a FILE shall not be used after the associated stream has been closed. mandatory Supported in Bug Finder only no
22.7 The macro EOF shall only be compared with the unmodified return value from any Standard Library required Supported in Bug Finder only no
function capable of returning EOF.
22.8 The value of errno shall be set to zero prior to a call to an errno-setting-function. required Supported in Bug Finder only no
22.9 The value of errno shall be tested against zero after calling an errno-setting-function. required Supported in Bug Finder only no
22.10 The value of errno shall only be tested when the last function to be called was an errno-setting- required Supported in Bug Finder only no
function.
60
Chapter 8. Appendix 2 - Definitions
Abbreviation Definition
Col Column
Jus Justified
NA Not Available
61