Vector Help

Reference Manual for PC-lint® Plus

12 MISRA® Standards Checking


The Motor Industry Software Reliability Association (MISRA) is an organization that produces and maintains C and C++ programming guidelines. The primary purpose of these guidelines is to codify a set of recommendations related to software development that aids in the creation of "safe and reliable software". While MISRA is an effort born out of the automotive industry, MISRA’s success has grown and the guidelines have been adopted to meet needs in other safety-critical industries such as healthcare and aerospace.

MISRA has produced five versions of their guidelines for C, each one replacing the previous version. The versions are MISRA C 1998 (sometimes referred to as MISRA C1), MISRA C 2004 (aka MISRA C2), MISRA C 2012 (aka MISRA C3), MISRA C:2023 (aka MISRA C4), and MISRA C:2025 (aka MISRA C5). In 2008, MISRA released guidelines for C++ (MISRA C++:2008). In 2016 MISRA released an amendment to MISRA C 2012 (MISRA C 2012 AMD-1) which adds several new rules. In 2020 MISRA released a second amendment to MISRA C 2012 (AMD-2) adding two new rules and updating several others. A third amendment to MISRA C 2012 (AMD-3) was released in 2022 and a fourth amendment (AMD-4) in 2023. In 2023 MISRA released MISRA C:2023 as well as guidelines for C++17 (MISRA C++:2023). The AUTOSAR coding guidelines (also supported by PC-lint Plus) was an interim effort that attempted to produce a modern version of the original MISRA C++ guidelines for use with C++14. In 2025 MISRA released MISRA C:2025.

Each MISRA guidelines document consists of a series of numbered advisory, required, and mandatory "rules" and "directives". A directive is more generalized (such as requiring that "run-time failures be minimized") while Rules are concrete and testable (such as forbidding the use of C++ style comments). Directives are often not statically checkable while Rules often are.

PC-lint Plus provides support for the MISRA C2, MISRA C3 (including AMD-1, AMD-2, AMD-3, and AMD-4), MISRA C4, MISRA C5, and the MISRA C++ and MISRA C++:2023 guidelines. This support is achieved through a combination of standard PC-lint Plus messages and elective notes dedicated to specific MISRA rules. Vector Informatik GmbH provides the author files au-misra2.lnt, au-misra3.lnt, au-misra3-amd1.lnt, au-misra3-amd2.lnt, au-misra3-amd3.lnt, au-misra3-amd4.lnt, au-misra4.lnt, au-misra5.lnt, au-misra-cpp.lnt, and au-misra-cpp2.lnt to enable the checks necessary to support these guidelines. These author files include -append options which cause messages that are used to report on MISRA violations to be annotated with the corresponding Rule or Directive number(s).

While some of the messages are very specific to MISRA guidelines (such as those involving interactions amongst "essential types", a MISRA creation), any of the messages may be employed individually for those desiring to make use of a subset of the checks, outside of MISRA compliance checking.

The author files enable checks for both library and non-library code. This means that the standard headers used in your source code are subject to the same scrutiny as the rest of the project. This is often a requirement but can result in a lot of noise if library code is not subject to the same compliance requirements as the rest of the project. MISRA checks can be disabled for library code by placing the options -wlib(4) -wlib(1) immediately after the author file is referenced. This raises and immediately lowers the library warning level resulting in a suppression of all non-error messages from library code. Any non-error messages that you intend to enable for library code (e.g. via +elib) should appear after these options.

The following subsections document the level of support provided by PC-lint Plus for each of the corresponding guidelines. For each guideline, the guideline name, level of support, and primary enforcing messages are provided. The letters within parentheses after each rule indicate whether the rule is advisory, required, documentation, or mandatory. An asterisk inside the parentheses indicates that MISRA has deemed the rule to be "undecidable", that is not possible to be fully checked by static analysis methods. In such cases PC-lint Plus provides the level of support feasible. While every effort is made to ensure the correctness of the information provided here, Vector Informatik GmbH makes no guarantee regarding the accuracy of the information conveyed.

The following terms are used to characterize the support that PC-lint Plus provides each guideline:

Most guidelines marked as Partially Supported or Assistance Provided contain a footnote that corresponds to an explanation of the corresponding limitation(s) at the end of each support matrix.

12.1 MISRA C:2025

12.1.1 MISRA C:2025 Guideline Support Summary

Supported

197

90.4%




Comprehensive

177

81.2%




Partial

17

7.8%




Assistance

3

1.4%




Not Supported

21

9.6%




Not Statically Checkable

5




TOTAL

223




12.1.2 MISRA C:2025 Guideline Support Matrix






Dir 1.1 (Req)

Not statically checkable






Dir 1.2 (Adv*)

Not statically checkable






Dir 2.1 (Req)

Supported






Dir 3.1 (Req)

Not statically checkable






Dir 4.1 (Req)

Not statically checkable






Dir 4.2 (Adv)

Not statically checkable






Dir 4.3 (Req)

Supported

9220 9221






Dir 4.4 (Adv)

Supported

602 9155






Dir 4.5 (Adv)

Supported

9046






Dir 4.6 (Adv)

Partially supported1

970






Dir 4.7 (Req)

Supported

534






Dir 4.8 (Adv)

Supported

9045






Dir 4.9 (Adv)

Supported

9026






Dir 4.10 (Req)

Supported

451






Dir 4.11 (Req)

Supported

418 419 420 422 668 669 670 671 857 2423 2460 2623 2960






Dir 4.12 (Req)

Supported

586






Dir 4.13 (Adv)

Supported

429 449 454 455 456 459 460 461 593 815 2434 2461 2462 2471 2474 2475 2476 2477 2478 2479 2492 2493






Dir 4.14 (Req)

Not supported






Dir 4.15 (Req)

Not supported






Dir 5.1 (Req)

Supported

457






Dir 5.2 (Req)

Supported

2462






Dir 5.3 (Req)

Partially supported2

586






Rule 1.1 (Req)

Supported

793






Rule 1.3 (Req*)

Partially supported3

1 2 31 34 40 54 86 115 401 413 414 419 437 449 466 491 498 557 558 566 576 606 629 705 706 707 719 783 792 816 931 972 975 1013 1107 2402 2405 2434 2445 2446 2447 2448 2452 2453 2454 2455 2472 2473 2475 2478 2479 2480 2481 2504 2505 2662 2701 2705 9023 9237 9423 9443






Rule 1.4 (Req)

Supported

586






Rule 1.5 (Req*)

Not supported






Rule 2.1 (Req*)

Supported

527 681 827






Rule 2.2 (Req*)

Supported

438 505 520 521 522 774






Rule 2.3 (Adv)

Supported

751 756






Rule 2.4 (Adv)

Supported

753 9058






Rule 2.5 (Adv)

Supported

750 755






Rule 2.6 (Adv)

Supported

563






Rule 2.7 (Adv)

Supported

715






Rule 2.8 (Adv)

Supported

528 529 714






Rule 3.1 (Req)

Supported

602 9059 9066






Rule 3.2 (Req)

Supported

427






Rule 4.1 (Req)

Supported

9039






Rule 4.2 (Adv)

Supported

584 739 9060






Rule 5.1 (Req)

Supported

621






Rule 5.2 (Req)

Supported

621






Rule 5.3 (Req)

Supported

578 621






Rule 5.4 (Req)

Supported

547 621 760 767 962






Rule 5.5 (Req)

Partially supported4

9095 9096






Rule 5.6 (Req)

Supported

9276






Rule 5.7 (Req)

Supported

407 631 9275






Rule 5.8 (Req)

Supported

9277






Rule 5.9 (Adv)

Supported

9278






Rule 5.10 (Req)

Supported

9093






Rule 6.1 (Req)

Supported

9149






Rule 6.2 (Req)

Supported

9088






Rule 6.3 (Req)

Supported

9202






Rule 7.1 (Req)

Supported

9001






Rule 7.2 (Req)

Supported

9048






Rule 7.3 (Req)

Supported

620 9057






Rule 7.4 (Req)

Supported

489 1778 2776






Rule 7.5 (Mand)

Supported

2505






Rule 7.6 (Req)

Supported

9222






Rule 8.1 (Req)

Partially supported5

601 808 832






Rule 8.2 (Req)

Supported

18 936 937 955






Rule 8.3 (Req)

Supported

18 9072 9073 9094






Rule 8.4 (Req)

Supported

15 957 9075






Rule 8.5 (Req)

Supported

9004






Rule 8.6 (Req)

Supported

2467 2469






Rule 8.7 (Adv)

Supported

765






Rule 8.8 (Req)

Supported

839






Rule 8.9 (Adv)

Supported

9003






Rule 8.10 (Req)

Supported

695 9056






Rule 8.11 (Adv)

Supported

9067






Rule 8.12 (Req)

Supported

488






Rule 8.13 (Adv*)

Supported

818 844 954






Rule 8.14 (Req)

Supported

586






Rule 8.15 (Req)

Partially supported6

2502 9503






Rule 8.16 (Adv)

Supported

9203






Rule 8.17 (Adv)

Supported

9205






Rule 8.18 (Req)

Not supported






Rule 8.19 (Adv)

Not supported






Rule 9.1 (Mand*)

Supported

530 603 644






Rule 9.2 (Req)

Supported

9069






Rule 9.3 (Req)

Supported

9068






Rule 9.4 (Req)

Supported

485






Rule 9.5 (Req)

Supported

9054






Rule 9.6 (Req)

Supported

2903 2904






Rule 9.7 (Mand*)

Not supported






Rule 10.1 (Req)

Supported

48 9027






Rule 10.2 (Req)

Supported

9028






Rule 10.3 (Req)

Supported

9034






Rule 10.4 (Req)

Supported

9029






Rule 10.5 (Adv)

Supported

9030






Rule 10.6 (Req)

Supported

9031






Rule 10.7 (Req)

Supported

9032






Rule 10.8 (Req)

Supported

9033






Rule 11.1 (Req)

Supported

176 178 9074






Rule 11.2 (Req)

Supported

9076






Rule 11.3 (Req)

Supported

9087






Rule 11.4 (Req)

Partially supported7

177 179 9078 9295






Rule 11.5 (Adv)

Partially supported8

9079






Rule 11.6 (Req)

Partially supported9

177 179 923






Rule 11.8 (Req)

Partially supported10

9005






Rule 11.9 (Req)

Supported

9080






Rule 11.10 (Req)

Supported

4175






Rule 11.11 (Req)

Partially supported11

9099






Rule 12.1 (Adv)

Supported

9050 9097






Rule 12.2 (Req*)

Supported

9053






Rule 12.3 (Adv)

Supported

9008






Rule 12.4 (Adv)

Supported

2421






Rule 12.5 (Mand)

Supported

682 882






Rule 12.6 (Req)

Supported

181






Rule 13.1 (Req*)

Supported

446






Rule 13.2 (Req*)

Supported

564






Rule 13.3 (Adv)

Supported

9049






Rule 13.4 (Adv)

Supported

720 820 9084






Rule 13.5 (Req*)

Supported

9007






Rule 13.6 (Req)

Partially supported12

9006






Rule 14.1 (Req*)

Supported

9009






Rule 14.2 (Req*)

Supported

850 9191 9192 9194 9195 9196 9197






Rule 14.3 (Req*)

Supported

650 685 774






Rule 14.4 (Req)

Supported

9036






Rule 15.1 (Adv)

Supported

801






Rule 15.2 (Req)

Supported

9064






Rule 15.3 (Req)

Supported

9041






Rule 15.4 (Adv)

Supported

9011






Rule 15.5 (Dis)

Supported






Rule 15.6 (Req)

Supported

9012






Rule 15.7 (Req)

Supported

9013 9063






Rule 16.1 (Req)

Supported

616 744 764 825 9014 9042 9077 9081 9082 9085






Rule 16.2 (Req)

Supported

44 9055






Rule 16.3 (Req)

Partially supported13

616 825 9077 9090






Rule 16.4 (Req)

Supported

744 9014 9085






Rule 16.5 (Req)

Supported

9082






Rule 16.6 (Req)

Supported

764 9081






Rule 16.7 (Req)

Supported

483






Rule 17.1 (Req)

Supported

586 829






Rule 17.2 (Req*)

Supported

9070






Rule 17.3 (Mand)

Supported

718






Rule 17.4 (Mand)

Supported

533






Rule 17.5 (Req*)

Supported

473






Rule 17.7 (Req)

Supported

534






Rule 17.8 (Adv*)

Supported

9044






Rule 17.9 (Mand*)

Supported

2436






Rule 17.10 (Req)

Supported

841






Rule 17.11 (Adv*)

Supported

2707






Rule 17.12 (Adv)

Supported

9147






Rule 17.13 (Req)

Supported

2417 4175 5805






Rule 18.1 (Req*)

Supported

415 416 428 661 662 676






Rule 18.2 (Req*)

Assistance provided14

947






Rule 18.3 (Req*)

Assistance provided15

946






Rule 18.4 (Adv)

Supported

9016






Rule 18.5 (Adv)

Supported

9025






Rule 18.6 (Req*)

Partially supported16

604 733 789






Rule 18.7 (Req)

Supported

9038






Rule 18.8 (Req)

Supported

9035






Rule 18.9 (Req)

Supported

9188






Rule 18.10 (Mand)

Supported

2708






Rule 19.1 (Mand*)

Partially supported17

464 2507






Rule 19.2 (Adv)

Supported

9018






Rule 19.3 (Req*)

Not supported






Rule 20.1 (Adv)

Supported

9019






Rule 20.2 (Req)

Supported

9020






Rule 20.3 (Req)

Supported

12 544






Rule 20.4 (Req)

Supported

9051






Rule 20.5 (Adv)

Supported

9021






Rule 20.6 (Req)

Supported

436






Rule 20.7 (Req)

Partially supported18

665






Rule 20.8 (Req)

Supported

9037






Rule 20.9 (Req)

Supported

553






Rule 20.10 (Adv)

Supported

9024






Rule 20.11 (Req)

Supported

484






Rule 20.12 (Req)

Supported

9015






Rule 20.13 (Req)

Supported

16 544 9160






Rule 20.14 (Req)

Supported

8






Rule 20.15 (Req)

Supported

136 9071 9083






Rule 21.3 (Req)

Supported

586






Rule 21.4 (Req)

Supported

586 829






Rule 21.5 (Req)

Supported

586 829






Rule 21.6 (Req)

Supported

586






Rule 21.7 (Req)

Supported

586






Rule 21.8 (Req)

Supported

586






Rule 21.9 (Req)

Supported

586






Rule 21.10 (Req)

Supported

586 829






Rule 21.11 (Adv)

Supported

829






Rule 21.12 (Req)

Supported

586 829






Rule 21.13 (Mand*)

Supported

426






Rule 21.14 (Req*)

Not supported






Rule 21.15 (Req)

Supported

857






Rule 21.16 (Req)

Supported

9098






Rule 21.17 (Mand*)

Supported

419 420






Rule 21.18 (Mand*)

Supported

419 420 422






Rule 21.19 (Mand)

Supported

2721 9223






Rule 21.20 (Mand*)

Not supported






Rule 21.21 (Req)

Supported

586






Rule 21.22 (Mand)

Supported

9504






Rule 21.23 (Req)

Supported

9218






Rule 21.24 (Req)

Supported

586






Rule 21.25 (Req)

Not supported






Rule 21.26 (Req*)

Not supported






Rule 22.1 (Req*)

Supported

429 698






Rule 22.2 (Mand*)

Supported

424 449






Rule 22.3 (Req*)

Not supported






Rule 22.4 (Mand*)

Supported

2477






Rule 22.5 (Mand*)

Supported

9047






Rule 22.6 (Mand*)

Supported

2471






Rule 22.7 (Req*)

Not supported






Rule 22.8 (Req*)

Not supported






Rule 22.9 (Req*)

Not supported






Rule 22.10 (Req*)

Not supported






Rule 22.11 (Req*)

Not supported






Rule 22.12 (Mand*)

Not supported






Rule 22.13 (Req)

Supported

2541






Rule 22.14 (Mand*)

Assistance provided19

2770 2771






Rule 22.15 (Req*)

Not supported






Rule 22.16 (Req*)

Supported

454






Rule 22.17 (Req*)

Partially supported20

455 2495






Rule 22.18 (Req*)

Supported

2457






Rule 22.19 (Req*)

Not supported






Rule 22.20 (Mand*)

Not supported






Rule 23.1 (Adv)

Supported

9211






Rule 23.2 (Req)

Supported

2419 9213






Rule 23.3 (Adv)

Supported

9208






Rule 23.4 (Req)

Supported

2416






Rule 23.5 (Adv)

Supported

9214






Rule 23.6 (Req)

Supported

9216






Rule 23.7 (Adv)

Supported

9219






Rule 23.8 (Req)

Supported

9210






1The exemption for bit-fields is not currently honored
2All calls to the thrd_create function are reported
3PC-lint Plus will warn about many, but not all, undefined/unspecified behaviors
4Non-identical name clashes between macro names and symbol names are not reported
5Function declarations without a parameter list are not reported
6Differences are only reported if the alignment values or types are different
7Conversions involving intptr_t and uintptr_t are always reported
8Conversions of pointers returned by Standard Library memory allocation functions are falsely reported
9Conversions between a pointer to void and object of type intptr_t/uintptr_t are falsely reported
10Conversions removing a _Atomic qualification are not reported
11Only pointers used in conjunction with a logical operator are reported
12Potential side effects of evaluating a variable-length array type in a sizeof expression are not diagnosed
13Switch cases terminated by control flow statements other than break will be falsely reported
14All pointer subtraction operations are reported
15All relational operators involving pointers are reported
16Objects with thread-local storage are not reported
17Reports overlapping assignments of arrays/unions and attempts to copy an object onto itself
18Only expressions that involve binary operators are reported
19Reports incompletely initialized mutexes
20Reports unlocking mutexes that were not previously locked and passing unlocked mutexes to functions that require locked mutexes

12.2 MISRA C:2023

12.2.1 MISRA C:2023 Guideline Support Summary

Supported

198

91.7%




Comprehensive

185

85.6%




Partial

10

4.6%




Assistance

3

1.4%




Not Supported

18

8.3%




Not Statically Checkable

5




TOTAL

221




12.2.2 MISRA C:2023 Guideline Support Matrix






Dir 1.1 (Req)

Not statically checkable






Dir 2.1 (Req)

Supported






Dir 3.1 (Req)

Not statically checkable






Dir 4.1 (Req)

Not statically checkable






Dir 4.2 (Adv)

Not statically checkable






Dir 4.3 (Req)

Supported

9220 9221






Dir 4.4 (Adv)

Supported

602 9155






Dir 4.5 (Adv)

Supported

9046






Dir 4.6 (Adv)

Partially supported1

970






Dir 4.7 (Req)

Supported

534






Dir 4.8 (Adv)

Supported

9045






Dir 4.9 (Adv)

Supported

9026






Dir 4.10 (Req)

Supported

451






Dir 4.11 (Req)

Supported

418 419 420 422 668 669 670 671 857 2423 2460 2623 2960






Dir 4.12 (Req)

Supported

586






Dir 4.13 (Adv)

Supported

429 449 454 455 456 459 460 461 593 815 2434 2461 2462 2471 2474 2475 2476 2477 2478 2479 2492 2493






Dir 4.14 (Req)

Not supported






Dir 4.15 (Req)

Not supported






Dir 5.1 (Req)

Supported

457






Dir 5.2 (Req)

Supported

2462






Dir 5.3 (Req)

Partially supported2

586






Rule 1.1 (Req)

Supported

793






Rule 1.2 (Adv*)

Not statically checkable






Rule 1.3 (Req*)

Partially supported3

1 2 31 34 40 54 86 115 401 413 414 419 437 449 466 491 498 557 558 566 576 606 629 705 706 707 719 783 792 816 931 972 975 1013 1107 2402 2405 2434 2445 2446 2447 2448 2452 2453 2454 2455 2472 2473 2475 2478 2479 2480 2481 2504 2505 2662 2701 2705 9023 9237 9423 9443






Rule 1.4 (Req)

Supported

586






Rule 1.5 (Req*)

Not supported






Rule 2.1 (Req*)

Supported

527 681 827






Rule 2.2 (Req*)

Supported

438 505 520 521 522 774






Rule 2.3 (Adv)

Supported

751 756






Rule 2.4 (Adv)

Supported

753 9058






Rule 2.5 (Adv)

Supported

750 755






Rule 2.6 (Adv)

Supported

563






Rule 2.7 (Adv)

Supported

715






Rule 2.8 (Adv)

Supported

528 529 714






Rule 3.1 (Req)

Supported

602 9059 9066






Rule 3.2 (Req)

Supported

427






Rule 4.1 (Req)

Supported

9039






Rule 4.2 (Adv)

Supported

584 739 9060






Rule 5.1 (Req)

Supported

621






Rule 5.2 (Req)

Supported

621






Rule 5.3 (Req)

Supported

578 621






Rule 5.4 (Req)

Supported

547 621 760 767 962






Rule 5.5 (Req)

Partially supported4

9095 9096






Rule 5.6 (Req)

Supported

9276






Rule 5.7 (Req)

Supported

407 631 9275






Rule 5.8 (Req)

Supported

9277






Rule 5.9 (Adv)

Supported

9278






Rule 6.1 (Req)

Supported

9149






Rule 6.2 (Req)

Supported

9088






Rule 6.3 (Req)

Supported

9202






Rule 7.1 (Req)

Supported

9001






Rule 7.2 (Req)

Supported

9048






Rule 7.3 (Req)

Supported

620 9057






Rule 7.4 (Req)

Supported

489 1778 2776






Rule 7.5 (Mand)

Supported

2505






Rule 7.6 (Req)

Supported

9222






Rule 8.1 (Req)

Partially supported5

601 808 832






Rule 8.2 (Req)

Supported

18 936 937 955






Rule 8.3 (Req)

Supported

18 9072 9073 9094






Rule 8.4 (Req)

Supported

15 957 9075






Rule 8.5 (Req)

Supported

9004






Rule 8.6 (Req)

Supported

2467 2469






Rule 8.7 (Adv)

Supported

765






Rule 8.8 (Req)

Supported

839






Rule 8.9 (Adv)

Supported

9003






Rule 8.10 (Req)

Supported

695 9056






Rule 8.11 (Adv)

Supported

9067






Rule 8.12 (Req)

Supported

488






Rule 8.13 (Adv*)

Supported

818 844 954






Rule 8.14 (Req)

Supported

586






Rule 8.15 (Req)

Partially supported6

2502 9503






Rule 8.16 (Adv)

Supported

9203






Rule 8.17 (Adv)

Supported

9205






Rule 9.1 (Mand*)

Supported

530 603 644






Rule 9.2 (Req)

Supported

9069






Rule 9.3 (Req)

Supported

9068






Rule 9.4 (Req)

Supported

485






Rule 9.5 (Req)

Supported

9054






Rule 9.6 (Req)

Supported

2903 2904






Rule 9.7 (Mand*)

Not supported






Rule 10.1 (Req)

Supported

48 9027 9099






Rule 10.2 (Req)

Supported

9028






Rule 10.3 (Req)

Supported

9034






Rule 10.4 (Req)

Supported

9029






Rule 10.5 (Adv)

Supported

9030






Rule 10.6 (Req)

Supported

9031






Rule 10.7 (Req)

Supported

9032






Rule 10.8 (Req)

Supported

9033






Rule 11.1 (Req)

Supported

176 178 9074






Rule 11.2 (Req)

Supported

9076






Rule 11.3 (Req)

Supported

9087






Rule 11.4 (Adv)

Supported

9078






Rule 11.5 (Adv)

Supported

9079






Rule 11.6 (Req)

Supported

177 179 923






Rule 11.7 (Req)

Supported

177 179 9295






Rule 11.8 (Req)

Supported

9005






Rule 11.9 (Req)

Supported

9080






Rule 11.10 (Req)

Supported

4175






Rule 12.1 (Adv)

Supported

9050 9097






Rule 12.2 (Req*)

Supported

9053






Rule 12.3 (Adv)

Supported

9008






Rule 12.4 (Adv)

Supported

2421






Rule 12.5 (Mand)

Supported

682 882






Rule 12.6 (Req)

Supported

181






Rule 13.1 (Req*)

Supported

446






Rule 13.2 (Req*)

Supported

564






Rule 13.3 (Adv)

Supported

9049






Rule 13.4 (Adv)

Supported

720 820 9084






Rule 13.5 (Req*)

Supported

9007






Rule 13.6 (Req)

Partially supported7

9006






Rule 14.1 (Req*)

Supported

9009






Rule 14.2 (Req*)

Supported

850 9191 9192 9194 9195 9196 9197






Rule 14.3 (Req*)

Supported

650 685 774






Rule 14.4 (Req)

Supported

9036






Rule 15.1 (Adv)

Supported

801






Rule 15.2 (Req)

Supported

9064






Rule 15.3 (Req)

Supported

9041






Rule 15.4 (Adv)

Supported

9011






Rule 15.5 (Adv)

Supported

904






Rule 15.6 (Req)

Supported

9012






Rule 15.7 (Req)

Supported

9013 9063






Rule 16.1 (Req)

Supported

616 744 764 825 9014 9042 9077 9081 9082 9085






Rule 16.2 (Req)

Supported

44 9055






Rule 16.3 (Req)

Supported

616 825 9077 9090






Rule 16.4 (Req)

Supported

744 9014 9085






Rule 16.5 (Req)

Supported

9082






Rule 16.6 (Req)

Supported

764 9081






Rule 16.7 (Req)

Supported

483






Rule 17.1 (Req)

Supported

586 829






Rule 17.2 (Req*)

Supported

9070






Rule 17.3 (Mand)

Supported

718






Rule 17.4 (Mand)

Supported

533






Rule 17.5 (Req*)

Supported

473






Rule 17.6 (Mand)

Supported

9043






Rule 17.7 (Req)

Supported

534






Rule 17.8 (Adv*)

Supported

9044






Rule 17.9 (Mand*)

Supported

2436






Rule 17.10 (Req)

Supported

841






Rule 17.11 (Adv*)

Supported

2707






Rule 17.12 (Adv)

Supported

9147






Rule 17.13 (Req)

Supported

2417 4175 5805






Rule 18.1 (Req*)

Supported

415 416 428 661 662 676






Rule 18.2 (Req*)

Assistance provided8

947






Rule 18.3 (Req*)

Assistance provided9

946






Rule 18.4 (Adv)

Supported

9016






Rule 18.5 (Adv)

Supported

9025






Rule 18.6 (Req*)

Supported

604 733 789






Rule 18.7 (Req)

Supported

9038






Rule 18.8 (Req)

Supported

9035






Rule 18.9 (Req)

Supported

9188






Rule 18.10 (Mand)

Supported

2708






Rule 19.1 (Mand*)

Partially supported10

464 2507






Rule 19.2 (Adv)

Supported

9018






Rule 20.1 (Adv)

Supported

9019






Rule 20.2 (Req)

Supported

9020






Rule 20.3 (Req)

Supported

12 544






Rule 20.4 (Req)

Supported

9051






Rule 20.5 (Adv)

Supported

9021






Rule 20.6 (Req)

Supported

436






Rule 20.7 (Req)

Partially supported11

665






Rule 20.8 (Req)

Supported

9037






Rule 20.9 (Req)

Supported

553






Rule 20.10 (Adv)

Supported

9024






Rule 20.11 (Req)

Supported

484






Rule 20.12 (Req)

Supported

9015






Rule 20.13 (Req)

Supported

16 544 9160






Rule 20.14 (Req)

Supported

8






Rule 21.1 (Req)

Supported

136 9071 9083






Rule 21.2 (Req)

Supported

9093






Rule 21.3 (Req)

Supported

586






Rule 21.4 (Req)

Supported

586 829






Rule 21.5 (Req)

Supported

586 829






Rule 21.6 (Req)

Supported

586






Rule 21.7 (Req)

Supported

586






Rule 21.8 (Req)

Supported

586






Rule 21.9 (Req)

Supported

586






Rule 21.10 (Req)

Supported

586 829






Rule 21.11 (Adv)

Supported

829






Rule 21.12 (Req)

Supported

586 829






Rule 21.13 (Mand*)

Supported

426






Rule 21.14 (Req*)

Not supported






Rule 21.15 (Req)

Supported

857






Rule 21.16 (Req)

Supported

9098






Rule 21.17 (Mand*)

Supported

419 420






Rule 21.18 (Mand*)

Supported

419 420 422






Rule 21.19 (Mand)

Supported

2721 9223






Rule 21.20 (Mand*)

Not supported






Rule 21.21 (Req)

Supported

586






Rule 21.22 (Mand)

Supported

9504






Rule 21.23 (Req)

Supported

9218






Rule 21.24 (Req)

Supported

586






Rule 21.25 (Req)

Not supported






Rule 21.26 (Req*)

Not supported






Rule 22.1 (Req*)

Supported

429 698






Rule 22.2 (Mand*)

Supported

424 449






Rule 22.3 (Req*)

Not supported






Rule 22.4 (Mand*)

Supported

2477






Rule 22.5 (Mand*)

Supported

9047






Rule 22.6 (Mand*)

Supported

2471






Rule 22.7 (Req*)

Not supported






Rule 22.8 (Req*)

Not supported






Rule 22.9 (Req*)

Not supported






Rule 22.10 (Req*)

Not supported






Rule 22.11 (Req*)

Not supported






Rule 22.12 (Mand*)

Not supported






Rule 22.13 (Req)

Supported

2541






Rule 22.14 (Mand*)

Assistance provided12

2770 2771






Rule 22.15 (Req*)

Not supported






Rule 22.16 (Req*)

Supported

454






Rule 22.17 (Req*)

Partially supported13

455 2495






Rule 22.18 (Req*)

Supported

2457






Rule 22.19 (Req*)

Not supported






Rule 22.20 (Mand*)

Not supported






Rule 23.1 (Adv)

Supported

9211






Rule 23.2 (Req)

Supported

2419 9213






Rule 23.3 (Adv)

Supported

9208






Rule 23.4 (Req)

Supported

2416






Rule 23.5 (Adv)

Supported

9214






Rule 23.6 (Req)

Supported

9216






Rule 23.7 (Adv)

Supported

9219






Rule 23.8 (Req)

Supported

9210






1The exemption for bit-fields is not currently honored
2All calls to the thrd_create function are reported
3PC-lint Plus will warn about many, but not all, undefined/unspecified behaviors
4Non-identical name clashes between macro names and symbol names are not reported
5Function declarations without a parameter list are not reported
6Differences are only reported if the alignment values or types are different
7Potential side effects of evaluating a variable-length array type in a sizeof expression are not diagnosed
8All pointer subtraction operations are reported
9All relational operators involving pointers are reported
10Reports overlapping assignments of arrays/unions and attempts to copy an object onto itself
11Only expressions that involve binary operators are reported
12Reports incompletely initialized mutexes
13Reports unlocking mutexes that were not previously locked and passing unlocked mutexes to functions that require locked mutexes

12.3 MISRA C 2012

12.3.1 MISRA C 2012 Guideline Support Summary

Supported

153

99.4%




Comprehensive

144

93.5%




Partial

7

4.5%




Assistance

2

1.3%




Not Supported

1

0.6%




Not Statically Checkable

5




TOTAL

159




12.3.2 MISRA C 2012 Guideline Support Matrix






Dir 1.1 (Req)

Not statically checkable






Dir 2.1 (Req)

Supported






Dir 3.1 (Req)

Not statically checkable






Dir 4.1 (Req)

Not statically checkable






Dir 4.2 (Adv)

Not statically checkable






Dir 4.3 (Req)

Supported

9220 9221






Dir 4.4 (Adv)

Supported

602 9155






Dir 4.5 (Adv)

Supported

9046






Dir 4.6 (Adv)

Partially supported1

970






Dir 4.7 (Req)

Supported

534






Dir 4.8 (Adv)

Supported

9045






Dir 4.9 (Adv)

Supported

9026






Dir 4.10 (Req)

Supported

451






Dir 4.11 (Req)

Supported

418 419 420 422 668 669 670 671 857 2423 2460 2623 2960






Dir 4.12 (Req)

Supported

586






Dir 4.13 (Adv)

Supported

429 449 454 455 456 459 460 461 593 815 2434 2461 2462 2471 2474 2475 2476 2477 2478 2479 2492 2493






Rule 1.1 (Req)

Supported

793






Rule 1.2 (Adv*)

Not statically checkable






Rule 1.3 (Req*)

Partially supported2

1 2 31 34 40 54 86 115 401 413 414 419 437 449 466 491 498 557 558 566 576 606 629 705 706 707 719 783 792 816 931 972 975 1013 1107 2402 2405 2434 2445 2446 2447 2448 2452 2453 2454 2455 2472 2473 2475 2478 2479 2480 2481 2504 2505 2662 2701 2705 9023 9237 9423 9443






Rule 2.1 (Req*)

Supported

527 681 827






Rule 2.2 (Req*)

Supported

438 505 520 521 522 774






Rule 2.3 (Adv)

Supported

751 756






Rule 2.4 (Adv)

Supported

753 9058






Rule 2.5 (Adv)

Supported

750 755






Rule 2.6 (Adv)

Supported

563






Rule 2.7 (Adv)

Supported

715






Rule 3.1 (Req)

Supported

602 9059 9066






Rule 3.2 (Req)

Supported

427






Rule 4.1 (Req)

Supported

9039






Rule 4.2 (Adv)

Supported

584 739 9060






Rule 5.1 (Req)

Supported

621






Rule 5.2 (Req)

Supported

621






Rule 5.3 (Req)

Supported

578 621






Rule 5.4 (Req)

Supported

547 621 760 767 962






Rule 5.5 (Req)

Partially supported3

9095 9096






Rule 5.6 (Req)

Supported

9276






Rule 5.7 (Req)

Supported

407 631 9275






Rule 5.8 (Req)

Supported

9277






Rule 5.9 (Adv)

Supported

9278






Rule 6.1 (Req)

Supported

9149






Rule 6.2 (Req)

Supported

9088






Rule 7.1 (Req)

Supported

9001






Rule 7.2 (Req)

Supported

9048






Rule 7.3 (Req)

Supported

620 9057






Rule 7.4 (Req)

Supported

489 1778 2776






Rule 8.1 (Req)

Partially supported4

601 808 832






Rule 8.2 (Req)

Supported

18 936 937 955






Rule 8.3 (Req)

Supported

18 9072 9073 9094






Rule 8.4 (Req)

Supported

15 957 9075






Rule 8.5 (Req)

Supported

9004






Rule 8.6 (Req)

Supported

2467 2469






Rule 8.7 (Adv)

Supported

765






Rule 8.8 (Req)

Supported

839






Rule 8.9 (Adv)

Supported

9003






Rule 8.10 (Req)

Supported

695 9056






Rule 8.11 (Adv)

Supported

9067






Rule 8.12 (Req)

Supported

488






Rule 8.13 (Adv*)

Supported

818 844 954






Rule 8.14 (Req)

Supported

586






Rule 9.1 (Mand*)

Supported

530 603 644






Rule 9.2 (Req)

Supported

9069






Rule 9.3 (Req)

Supported

9068






Rule 9.4 (Req)

Supported

485






Rule 9.5 (Req)

Supported

9054






Rule 10.1 (Req)

Supported

48 9027 9099






Rule 10.2 (Req)

Supported

9028






Rule 10.3 (Req)

Supported

9034






Rule 10.4 (Req)

Supported

9029






Rule 10.5 (Adv)

Supported

9030






Rule 10.6 (Req)

Supported

9031






Rule 10.7 (Req)

Supported

9032






Rule 10.8 (Req)

Supported

9033






Rule 11.1 (Req)

Supported

176 178 9074






Rule 11.2 (Req)

Supported

9076






Rule 11.3 (Req)

Supported

9087






Rule 11.4 (Adv)

Supported

9078






Rule 11.5 (Adv)

Supported

9079






Rule 11.6 (Req)

Supported

177 179 923






Rule 11.7 (Req)

Supported

177 179 9295






Rule 11.8 (Req)

Supported

9005






Rule 11.9 (Req)

Supported

9080






Rule 12.1 (Adv)

Supported

9050 9097






Rule 12.2 (Req*)

Supported

9053






Rule 12.3 (Adv)

Supported

9008






Rule 12.4 (Adv)

Supported

2421






Rule 13.1 (Req*)

Supported

446






Rule 13.2 (Req*)

Supported

564






Rule 13.3 (Adv)

Supported

9049






Rule 13.4 (Adv)

Supported

720 820 9084






Rule 13.5 (Req*)

Supported

9007






Rule 13.6 (Req)

Partially supported5

9006






Rule 14.1 (Req*)

Supported

9009






Rule 14.2 (Req*)

Supported

850 9191 9192 9194 9195 9196 9197






Rule 14.3 (Req*)

Supported

650 685 774






Rule 14.4 (Req)

Supported

9036






Rule 15.1 (Adv)

Supported

801






Rule 15.2 (Req)

Supported

9064






Rule 15.3 (Req)

Supported

9041






Rule 15.4 (Adv)

Supported

9011






Rule 15.5 (Adv)

Supported

904






Rule 15.6 (Req)

Supported

9012






Rule 15.7 (Req)

Supported

9013 9063






Rule 16.1 (Req)

Supported

616 744 764 825 9014 9042 9077 9081 9082 9085






Rule 16.2 (Req)

Supported

44 9055






Rule 16.3 (Req)

Supported

616 825 9077 9090






Rule 16.4 (Req)

Supported

744 9014 9085






Rule 16.5 (Req)

Supported

9082






Rule 16.6 (Req)

Supported

764 9081






Rule 16.7 (Req)

Supported

483






Rule 17.1 (Req)

Supported

586 829






Rule 17.2 (Req*)

Supported

9070






Rule 17.3 (Mand)

Supported

718






Rule 17.4 (Mand)

Supported

533






Rule 17.5 (Req*)

Supported

473






Rule 17.6 (Mand)

Supported

9043






Rule 17.7 (Req)

Supported

534






Rule 17.8 (Adv*)

Supported

9044






Rule 18.1 (Req*)

Supported

415 416 428 661 662 676






Rule 18.2 (Req*)

Assistance provided6

947






Rule 18.3 (Req*)

Assistance provided7

946






Rule 18.4 (Adv)

Supported

9016






Rule 18.5 (Adv)

Supported

9025






Rule 18.6 (Req*)

Supported

604 733 789






Rule 18.7 (Req)

Supported

9038






Rule 18.8 (Req)

Supported

9035






Rule 19.1 (Mand*)

Partially supported8

464 2507






Rule 19.2 (Adv)

Supported

9018






Rule 20.1 (Adv)

Supported

9019






Rule 20.2 (Req)

Supported

9020






Rule 20.3 (Req)

Supported

12 544






Rule 20.4 (Req)

Supported

9051






Rule 20.5 (Adv)

Supported

9021






Rule 20.6 (Req)

Supported

436






Rule 20.7 (Req)

Partially supported9

665






Rule 20.8 (Req)

Supported

9037






Rule 20.9 (Req)

Supported

553






Rule 20.10 (Adv)

Supported

9024






Rule 20.11 (Req)

Supported

484






Rule 20.12 (Req)

Supported

9015






Rule 20.13 (Req)

Supported

16 544 9160






Rule 20.14 (Req)

Supported

8






Rule 21.1 (Req)

Supported

136 9071 9083






Rule 21.2 (Req)

Supported

9093






Rule 21.3 (Req)

Supported

586






Rule 21.4 (Req)

Supported

586 829






Rule 21.5 (Req)

Supported

586 829






Rule 21.6 (Req)

Supported

586






Rule 21.7 (Req)

Supported

586






Rule 21.8 (Req)

Supported

586






Rule 21.9 (Req)

Supported

586






Rule 21.10 (Req)

Supported

586 829






Rule 21.11 (Adv)

Supported

829






Rule 21.12 (Req)

Supported

586 829






Rule 22.1 (Req*)

Supported

429 698






Rule 22.2 (Mand*)

Supported

424 449






Rule 22.3 (Req*)

Not supported






Rule 22.4 (Mand*)

Supported

2477






Rule 22.5 (Mand*)

Supported

9047






Rule 22.6 (Mand*)

Supported

2471






1The exemption for bit-fields is not currently honored
2PC-lint Plus will warn about many, but not all, undefined/unspecified behaviors
3Non-identical name clashes between macro names and symbol names are not reported
4Function declarations without a parameter list are not reported
5Potential side effects of evaluating a variable-length array type in a sizeof expression are not diagnosed
6All pointer subtraction operations are reported
7All relational operators involving pointers are reported
8Reports overlapping assignments of arrays/unions and attempts to copy an object onto itself
9Only expressions that involve binary operators are reported

12.4 MISRA C 2012 AMD-1

12.4.1 MISRA C 2012 AMD-1 Guideline Support Summary

Supported

7

50.0%




Comprehensive

7

50.0%




Partial

0

0.0%




Assistance

0

0.0%




Not Supported

7

50.0%




Not Statically Checkable

0




TOTAL

14




12.4.2 MISRA C 2012 AMD-1 Guideline Support Matrix






Dir 4.14 (Req)

Not supported






Rule 12.5 (Mand)

Supported

682 882






Rule 21.13 (Mand*)

Supported

426






Rule 21.14 (Req*)

Not supported






Rule 21.15 (Req)

Supported

857






Rule 21.16 (Req)

Supported

9098






Rule 21.17 (Mand*)

Supported

419 420






Rule 21.18 (Mand*)

Supported

419 420 422






Rule 21.19 (Mand)

Supported

2721 9223






Rule 21.20 (Mand*)

Not supported






Rule 22.7 (Req*)

Not supported






Rule 22.8 (Req*)

Not supported






Rule 22.9 (Req*)

Not supported






Rule 22.10 (Req*)

Not supported






12.5 MISRA C 2012 AMD-2

12.5.1 MISRA C 2012 AMD-2 Guideline Support Summary

Supported

4

100.0%




Comprehensive

4

100.0%




Partial

0

0.0%




Assistance

0

0.0%




Not Supported

0

0.0%




Not Statically Checkable

0




TOTAL

4




12.5.2 MISRA C 2012 AMD-2 Guideline Support Matrix






Rule 1.4 (Req)

Supported

586






Rule 21.3 (Req)

Supported

586






Rule 21.8 (Req)

Supported

586






Rule 21.21 (Req)

Supported

586






12.6 MISRA C 2012 AMD-3

12.6.1 MISRA C 2012 AMD-3 Guideline Support Summary

Supported

22

91.7%




Comprehensive

21

87.5%




Partial

1

4.2%




Assistance

0

0.0%




Not Supported

2

8.3%




Not Statically Checkable

0




TOTAL

24




12.6.2 MISRA C 2012 AMD-3 Guideline Support Matrix






Dir 4.15 (Req)

Not supported






Rule 1.5 (Req*)

Not supported






Rule 6.3 (Req)

Supported

9202






Rule 7.5 (Mand)

Supported

2505






Rule 8.15 (Req)

Partially supported1

2502 9503






Rule 8.16 (Adv)

Supported

9203






Rule 8.17 (Adv)

Supported

9205






Rule 17.9 (Mand*)

Supported

2436






Rule 17.10 (Req)

Supported

841






Rule 17.11 (Adv*)

Supported

2707






Rule 17.12 (Adv)

Supported

9147






Rule 17.13 (Req)

Supported

2417 4175 5805






Rule 18.9 (Req)

Supported

9188






Rule 21.22 (Mand)

Supported

9504






Rule 21.23 (Req)

Supported

9218






Rule 21.24 (Req)

Supported

586






Rule 23.1 (Adv)

Supported

9211






Rule 23.2 (Req)

Supported

2419 9213






Rule 23.3 (Adv)

Supported

9208






Rule 23.4 (Req)

Supported

2416






Rule 23.5 (Adv)

Supported

9214






Rule 23.6 (Req)

Supported

9216






Rule 23.7 (Adv)

Supported

9219






Rule 23.8 (Req)

Supported

9210






1Differences are only reported if the alignment values or types are different

12.7 MISRA C 2012 AMD-4

12.7.1 MISRA C 2012 AMD-4 Guideline Support Summary

Supported

14

63.6%




Comprehensive

11

50.0%




Partial

2

9.1%




Assistance

1

4.5%




Not Supported

8

36.4%




Not Statically Checkable

0




TOTAL

22




12.7.2 MISRA C 2012 AMD-4 Guideline Support Matrix






Dir 5.1 (Req)

Supported

457






Dir 5.2 (Req)

Supported

2462






Dir 5.3 (Req)

Partially supported1

586






Rule 2.8 (Adv)

Supported

528 529 714






Rule 7.6 (Req)

Supported

9222






Rule 9.6 (Req)

Supported

2903 2904






Rule 9.7 (Mand*)

Not supported






Rule 11.10 (Req)

Supported

4175






Rule 12.6 (Req)

Supported

181






Rule 18.10 (Mand)

Supported

2708






Rule 21.25 (Req)

Not supported






Rule 21.26 (Req*)

Not supported






Rule 22.11 (Req*)

Not supported






Rule 22.12 (Mand*)

Not supported






Rule 22.13 (Req)

Supported

2541






Rule 22.14 (Mand*)

Assistance provided2

2770 2771






Rule 22.15 (Req*)

Not supported






Rule 22.16 (Req*)

Supported

454






Rule 22.17 (Req*)

Partially supported3

455 2495






Rule 22.18 (Req*)

Supported

2457






Rule 22.19 (Req*)

Not supported






Rule 22.20 (Mand*)

Not supported






1All calls to the thrd_create function are reported
2Reports incompletely initialized mutexes
3Reports unlocking mutexes that were not previously locked and passing unlocked mutexes to functions that require locked mutexes

12.8 MISRA C++:2023

12.8.1 MISRA C++:2023 Guideline Support Summary

Supported

136

76.8%




Comprehensive

116

65.5%




Partial

20

11.3%




Assistance

0

0.0%




Not Supported

41

23.2%




Not Statically Checkable

2




TOTAL

179




12.8.2 MISRA C++:2023 Guideline Support Matrix






Rule 0.0.1 (Req)

Supported

527 681 827






Rule 0.0.2 (Adv*)

Supported

650 685 774






Rule 0.1.1 (Adv*)

Supported

438 838






Rule 0.1.2 (Req)

Supported

534






Rule 0.2.1 (Adv)

Partially supported1

529






Rule 0.2.2 (Req)

Supported

715






Rule 0.2.3 (Adv)

Not supported






Rule 0.2.4 (Adv)

Not supported






Dir 0.3.1 (Adv)

Not statically checkable






Dir 0.3.2 (Req)

Not statically checkable






Rule 4.1.1 (Req*)

Not supported






Rule 4.1.2 (Adv)

Partially supported2

586 829 986 1906






Rule 4.1.3 (Req*)

Not supported






Rule 4.6.1 (Req*)

Supported

564






Rule 5.0.1 (Adv)

Supported

584 854 9060






Rule 5.7.1 (Req)

Supported

602






Dir 5.7.2 (Adv)

Supported

9155 9184






Rule 5.7.3 (Req)

Supported

427






Rule 5.10.1 (Req)

Not supported






Rule 5.13.1 (Req)

Supported

606






Rule 5.13.2 (Req)

Supported

9039






Rule 5.13.3 (Req)

Supported

9001






Rule 5.13.4 (Req)

Supported

9048






Rule 5.13.5 (Req)

Supported

620






Rule 5.13.6 (Req)

Supported

9251






Rule 5.13.7 (Req)

Supported

707 1107






Rule 6.0.1 (Req)

Partially supported3

3704 3705 9108






Rule 6.0.2 (Adv)

Supported

9067






Rule 6.0.3 (Adv)

Supported

9141 9255






Rule 6.0.4 (Req)

Supported

9142






Rule 6.2.1 (Req)

Partially supported4

631 2467 2469






Rule 6.2.2 (Req)

Not supported






Rule 6.2.3 (Req)

Not supported






Rule 6.2.4 (Req)

Supported

9107






Rule 6.4.1 (Req)

Partially supported5

578






Rule 6.4.2 (Req)

Not supported






Rule 6.4.3 (Req)

Supported

9250






Rule 6.5.1 (Adv)

Partially supported6

902






Rule 6.5.2 (Adv)

Not supported






Rule 6.7.1 (Req)

Supported

9257






Rule 6.7.2 (Req)

Not supported






Rule 6.8.1 (Req*)

Supported

449






Rule 6.8.2 (Mand)

Partially supported7

604






Rule 6.8.3 (Req)

Supported

733 789






Rule 6.8.4 (Adv)

Supported

1806






Rule 6.9.1 (Req)

Partially supported8

9073 9094 9168






Rule 6.9.2 (Adv)

Supported

970






Rule 7.0.1 (Req)

Partially supported9

483 921 1785 9111






Rule 7.0.2 (Req)

Partially supported10

909 1564 1786






Rule 7.0.3 (Req)

Not supported






Rule 7.0.4 (Req)

Supported

9265






Rule 7.0.5 (Req)

Not supported






Rule 7.0.6 (Req)

Not supported






Rule 7.11.1 (Req)

Supported

586 910






Rule 7.11.2 (Req)

Supported

9132






Rule 7.11.3 (Req)

Partially supported11

9147






Rule 8.0.1 (Adv)

Partially supported12

9050 9097






Rule 8.1.1 (Req)

Not supported






Rule 8.1.2 (Adv)

Not supported






Rule 8.2.1 (Req)

Supported

3418






Rule 8.2.2 (Req)

Supported

1924 1946






Rule 8.2.3 (Req)

Supported

9005






Rule 8.2.4 (Req)

Partially supported13

9074






Rule 8.2.5 (Req)

Supported

9164






Rule 8.2.6 (Req)

Not supported






Rule 8.2.7 (Adv)

Supported

9091






Rule 8.2.8 (Req)

Supported

9078






Rule 8.2.9 (Req)

Supported

9161






Rule 8.2.10 (Req*)

Supported

9070






Rule 8.2.11 (Req)

Supported

4078






Rule 8.3.1 (Adv)

Supported

9134






Rule 8.3.2 (Adv)

Supported

9207






Rule 8.7.1 (Req*)

Supported

415 416 419 420 428






Rule 8.7.2 (Req*)

Not supported






Rule 8.9.1 (Req*)

Not supported






Rule 8.14.1 (Adv*)

Supported

9007






Rule 8.18.1 (Mand*)

Not supported






Rule 8.18.2 (Adv)

Supported

720 820 9084






Rule 8.19.1 (Adv)

Supported

9008






Rule 8.20.1 (Adv)

Not supported






Rule 9.2.1 (Req)

Not supported






Rule 9.3.1 (Req)

Supported

9012






Rule 9.4.1 (Req)

Supported

9013






Rule 9.4.2 (Req)

Not supported






Rule 9.5.1 (Adv)

Not supported






Rule 9.5.2 (Req)

Supported

3907






Rule 9.6.1 (Adv)

Supported

801






Rule 9.6.2 (Req)

Supported

9041






Rule 9.6.3 (Req)

Supported

9064






Rule 9.6.4 (Req*)

Supported

2436






Rule 9.6.5 (Req)

Supported

533






Rule 10.0.1 (Adv)

Supported

9146






Rule 10.1.1 (Adv)

Supported

818 1764






Rule 10.1.2 (Req)

Supported

9256






Rule 10.2.1 (Req)

Supported

9418






Rule 10.2.2 (Adv)

Supported

9419






Rule 10.2.3 (Req)

Not supported






Rule 10.3.1 (Adv)

Supported

1751






Rule 10.4.1 (Req)

Supported

9217 9220






Rule 11.3.1 (Adv)

Partially supported14

9436






Rule 11.3.2 (Adv)

Supported

9025






Rule 11.6.1 (Adv)

Supported

901






Rule 11.6.2 (Mand*)

Supported

530






Rule 11.6.3 (Req)

Supported

488






Rule 12.2.1 (Adv)

Supported

9253






Rule 12.2.2 (Req)

Supported

678 9212






Rule 12.2.3 (Req)

Supported

9088






Rule 12.3.1 (Req)

Supported

586






Rule 13.1.1 (Adv)

Supported

9174






Rule 13.1.2 (Req)

Supported

1748






Rule 13.3.1 (Req)

Supported

9421 9422






Rule 13.3.2 (Req)

Supported

1953






Rule 13.3.3 (Req)

Partially supported15

9072 9272






Rule 13.3.4 (Req)

Not supported






Rule 14.1.1 (Adv)

Supported

9413 9417






Rule 15.0.1 (Req)

Not supported






Rule 15.0.2 (Adv)

Partially supported16

1724 3401 9185 9405 9406 9407 9408 9409 9410 9411 9412






Rule 15.1.1 (Req*)

Partially supported17

1506






Rule 15.1.2 (Adv)

Supported

1928






Rule 15.1.3 (Req)

Supported

1930 1931






Rule 15.1.4 (Adv)

Not supported






Rule 15.1.5 (Req)

Not supported






Dir 15.8.1 (Req)

Supported

1529






Rule 16.5.1 (Req)

Supported

1753






Rule 16.5.2 (Req)

Supported

9135






Rule 16.6.1 (Adv)

Supported

1956






Rule 17.8.1 (Req)

Supported

9179






Rule 18.1.1 (Req)

Supported

9154






Rule 18.1.2 (Req)

Supported

9156






Rule 18.3.1 (Adv)

Not supported






Rule 18.3.2 (Req)

Supported

1752






Rule 18.3.3 (Req)

Supported

3433






Rule 18.4.1 (Req)

Not supported






Rule 18.5.1 (Adv*)

Not supported






Rule 18.5.2 (Adv)

Supported

586






Rule 19.0.1 (Req)

Supported

16 544 9160






Rule 19.0.2 (Req)

Supported

9026






Rule 19.0.3 (Adv)

Supported

9019






Rule 19.0.4 (Adv)

Not supported






Rule 19.1.1 (Req)

Supported

491






Rule 19.1.2 (Req)

Supported

8






Rule 19.1.3 (Req)

Supported

553






Rule 19.2.1 (Req)

Supported

967






Rule 19.2.2 (Req)

Supported

12






Rule 19.2.3 (Req)

Supported

9020






Rule 19.3.1 (Adv)

Supported

9024






Rule 19.3.2 (Req)

Supported

484






Rule 19.3.3 (Req)

Supported

9015






Rule 19.3.4 (Req)

Partially supported18

665






Rule 19.3.5 (Req)

Supported

436






Rule 19.6.1 (Adv)

Supported

586






Rule 21.2.1 (Req)

Supported

586






Rule 21.2.2 (Req)

Supported

586






Rule 21.2.3 (Req)

Supported

586






Rule 21.2.4 (Req)

Supported

586






Rule 21.6.1 (Adv*)

Supported

586






Rule 21.6.2 (Req)

Partially supported19

586 9173






Rule 21.6.3 (Req)

Not supported






Rule 21.6.4 (Req)

Supported

3904






Rule 21.6.5 (Req)

Supported

1404






Rule 21.10.1 (Req)

Supported

586






Rule 21.10.2 (Req)

Supported

586 829






Rule 21.10.3 (Req)

Supported

586






Rule 22.3.1 (Req)

Not supported






Rule 22.4.1 (Req)

Supported

9180






Rule 23.11.1 (Adv)

Not supported






Rule 24.5.1 (Req)

Supported

586






Rule 24.5.2 (Req)

Supported

586






Rule 25.5.1 (Req)

Supported

586






Rule 25.5.2 (Mand)

Not supported






Rule 25.5.3 (Mand*)

Not supported






Rule 26.3.1 (Adv)

Supported

586






Rule 28.3.1 (Req*)

Not supported






Rule 28.6.1 (Req)

Supported

3711 3911






Rule 28.6.2 (Req)

Not supported






Rule 28.6.3 (Req)

Partially supported20

1424 1765






Rule 28.6.4 (Req)

Not supported






Rule 30.0.1 (Req)

Supported

586






Rule 30.0.2 (Req*)

Not supported






1Non-local variables are not reported
2The following uses of deprecated features are reported: the functions std::uncaught_exception, std::not1, std::not2, std::get_temporary_buffer, and std::return_temporary_buffer; the types std::iterator, std::raw_storage_iterator, std::unary_negate, std::binary_negate, std::wbuffer_convert, std::wstring_convert, the codecvt header; and throw exception specifications.
3Redundant parentheses around declarators are not reported
4Multiple definitions of functions, variables and disparate tag type definitions are reported
5Name hiding involving data members and enumerators are not reported
6Only functions with external linkage are reported
7Functions that throw the address of automatic variables or return lambdas that capture automatic variables are not reported
8The exception for top-level cv-qualifiers is not supported
9Boolean conversions resulting from using == and != with other types are not reported and no exception is made for bit-field assignment
10The exceptions for bit-fields and while conditions are not honored
11Exemption for assignment of function to pointer-to-function type is not supported
12Expressions appearing in preprocessor directives are not reported
13Conversions involving pointer to member functions are not reported
14No diagnostic is emitted for static constexpr data members
15Parameter name mismatches that span multiple modules are not diagnosed
16Volatile-qualified parameters and default arguments are not reported
17Uses of typeid and dynamic_cast are not diagnosed
18Template parameter lists appearing in macro arguments may result in false positives
19Uses of calloc, malloc, realloc, free, aligned_malloc, non-placement new, and delete are reported
20Uses of objects in a potentially moved-from state resulting from a call to std::move are reported

12.9 MISRA C++:2008

12.9.1 MISRA C++ Guideline Support Summary

Supported

197

91.2%




Comprehensive

190

88.0%




Partial

6

2.8%




Assistance

1

0.5%




Not Supported

19

8.8%




Not Statically Checkable

12




TOTAL

228




12.9.2 MISRA C++ Guideline Support Matrix






Rule 0-1-1 (req)

Supported

527 681 685 774 827 944






Rule 0-1-2 (req)

Supported

685 774 827 944






Rule 0-1-3 (req)

Supported

528 529 714 752 757 1715






Rule 0-1-4 (req)

Partially supported1

528 529 550 551 552






Rule 0-1-5 (req)

Supported

751 753 756 758






Rule 0-1-6 (req)

Supported

438 838






Rule 0-1-7 (req)

Supported

534






Rule 0-1-8 (req)

Supported

9175






Rule 0-1-9 (req)

Supported

438 587 685 774 838 944 948






Rule 0-1-10 (req)

Supported

528 714 1714 1914






Rule 0-1-11 (req)

Supported

715 9215






Rule 0-1-12 (req)

Supported

715 9215






Rule 0-2-1 (req)

Partially supported2

464 2507






Rule 0-3-1 (doc)

Supported






Rule 0-3-2 (req)

Supported

534






Rule 0-4-1 (doc)

Not statically checkable






Rule 0-4-2 (doc)

Not statically checkable






Rule 0-4-3 (doc)

Not statically checkable






Rule 1-0-1 (req)

Not supported






Rule 1-0-2 (req)

Not statically checkable






Rule 1-0-3 (doc)

Not statically checkable






Rule 2-2-1 (doc)

Not statically checkable






Rule 2-3-1 (req)

Supported

584 739






Rule 2-5-1 (adv)

Supported

9102






Rule 2-7-1 (req)

Supported

602






Rule 2-7-2 (req)

Not statically checkable






Rule 2-7-3 (adv)

Not statically checkable






Rule 2-10-1 (req)

Not supported






Rule 2-10-2 (req)

Supported

578






Rule 2-10-3 (req)

Supported

9276






Rule 2-10-4 (req)

Supported

9275






Rule 2-10-5 (adv)

Supported

9103






Rule 2-10-6 (req)

Supported

18






Rule 2-13-1 (req)

Supported

606






Rule 2-13-2 (req)

Supported

9001 9104






Rule 2-13-3 (req)

Supported

9105






Rule 2-13-4 (req)

Supported

9106






Rule 2-13-5 (req)

Supported

707






Rule 3-1-1 (req)

Supported

9107






Rule 3-1-2 (req)

Supported

1798 9108






Rule 3-1-3 (req)

Supported

9067






Rule 3-2-1 (req)

Supported

18 31






Rule 3-2-2 (req)

Supported

15 31






Rule 3-2-3 (req)

Supported

9004






Rule 3-2-4 (req)

Supported

2467 2469






Rule 3-3-1 (req)

Supported

759 765






Rule 3-3-2 (req)

Supported

401 839






Rule 3-4-1 (req)

Partially supported3

9003






Rule 3-9-1 (req)

Partially supported4

9073 9094 9168






Rule 3-9-2 (adv)

Supported

970






Rule 3-9-3 (req)

Supported

2498 2499 9110






Rule 4-5-1 (req)

Supported

9111






Rule 4-5-2 (req)

Not supported






Rule 4-5-3 (req)

Supported

9112






Rule 4-10-1 (req)

Not supported






Rule 4-10-2 (req)

Supported

910






Rule 5-0-1 (req)

Supported

564






Rule 5-0-2 (adv)

Supported

9113






Rule 5-0-3 (req)

Supported

9114 9116






Rule 5-0-4 (req)

Supported

9117






Rule 5-0-5 (req)

Supported

9115 9118






Rule 5-0-6 (req)

Supported

9119 9120






Rule 5-0-7 (req)

Supported

9121 9122






Rule 5-0-8 (req)

Supported

9123 9124






Rule 5-0-9 (req)

Supported

9125






Rule 5-0-10 (req)

Supported

9126






Rule 5-0-11 (req)

Supported

9128






Rule 5-0-12 (req)

Not supported






Rule 5-0-13 (req)

Supported

9177






Rule 5-0-14 (req)

Supported

9178






Rule 5-0-15 (req)

Supported

947 9016 9264






Rule 5-0-16 (req)

Supported

415 416 661 662






Rule 5-0-17 (req)

Assistance provided5

947






Rule 5-0-18 (req)

Supported

946






Rule 5-0-19 (req)

Supported

9025






Rule 5-0-20 (req)

Supported

9172






Rule 5-0-21 (req)

Supported

9130






Rule 5-2-1 (req)

Supported

9131






Rule 5-2-2 (req)

Supported

1774 1939






Rule 5-2-3 (adv)

Supported

9171






Rule 5-2-4 (req)

Supported

1924 1946






Rule 5-2-5 (req)

Supported

9005






Rule 5-2-6 (req)

Supported

611






Rule 5-2-7 (req)

Supported

9176






Rule 5-2-8 (adv)

Supported

9010 9079






Rule 5-2-9 (adv)

Supported

9091






Rule 5-2-10 (adv)

Supported

9049






Rule 5-2-11 (req)

Supported

1753






Rule 5-2-12 (req)

Supported

9132






Rule 5-3-1 (req)

Supported

9133






Rule 5-3-2 (req)

Supported

9134






Rule 5-3-3 (req)

Supported

9135






Rule 5-3-4 (req)

Supported

9006






Rule 5-8-1 (req)

Supported

9136






Rule 5-14-1 (req)

Supported

9007






Rule 5-17-1 (req)

Not supported






Rule 5-18-1 (req)

Supported

9008






Rule 5-19-1 (adv)

Not supported






Rule 6-2-1 (req)

Supported

720 820 9084






Rule 6-2-2 (req)

Supported

777 9252






Rule 6-2-3 (req)

Supported

9138






Rule 6-3-1 (req)

Supported

9012






Rule 6-4-1 (req)

Supported

9012






Rule 6-4-2 (req)

Supported

9013






Rule 6-4-3 (req)

Supported

9042






Rule 6-4-4 (req)

Supported

9055






Rule 6-4-5 (req)

Supported

9090






Rule 6-4-6 (req)

Supported

744 787 9139






Rule 6-4-7 (req)

Supported

483






Rule 6-4-8 (req)

Supported

764






Rule 6-5-1 (req)

Supported

9009 9191 9192






Rule 6-5-2 (req)

Supported

2840






Rule 6-5-3 (req)

Supported

850






Rule 6-5-4 (req)

Supported

9193






Rule 6-5-5 (req)

Supported

9194 9195






Rule 6-5-6 (req)

Supported

9196






Rule 6-6-1 (req)

Supported

9041






Rule 6-6-2 (req)

Supported

107 9064






Rule 6-6-3 (req)

Supported

9140






Rule 6-6-4 (req)

Supported

9011






Rule 6-6-5 (req)

Supported

904






Rule 7-1-1 (req)

Supported

843 952 953






Rule 7-1-2 (req)

Supported

818 1764






Rule 7-2-1 (req)

Not supported






Rule 7-3-1 (req)

Supported

9141 9162






Rule 7-3-2 (req)

Supported

9142






Rule 7-3-3 (req)

Supported

1751






Rule 7-3-4 (req)

Supported

9144






Rule 7-3-5 (req)

Supported

3717






Rule 7-3-6 (req)

Supported

9145






Rule 7-4-1 (doc)

Not statically checkable






Rule 7-4-2 (req)

Not supported






Rule 7-4-3 (req)

Supported

9220 9221






Rule 7-5-1 (req)

Supported

604






Rule 7-5-2 (req)

Supported

789






Rule 7-5-3 (req)

Supported

1780 1940 3780 3980






Rule 7-5-4 (req)

Supported

9070






Rule 8-0-1 (req)

Supported

9146






Rule 8-3-1 (req)

Supported

1735






Rule 8-4-1 (req)

Supported

9165






Rule 8-4-2 (req)

Supported

9072 9272






Rule 8-4-3 (req)

Supported

533






Rule 8-4-4 (req)

Supported

9147






Rule 8-5-1 (req)

Supported

530






Rule 8-5-2 (req)

Supported

940






Rule 8-5-3 (req)

Supported

9148






Rule 9-3-1 (req)

Supported

1537 3537






Rule 9-3-2 (req)

Supported

1536






Rule 9-3-3 (req)

Supported

1762






Rule 9-5-1 (req)

Supported

9018






Rule 9-6-1 (doc)

Not statically checkable






Rule 9-6-2 (req)

Supported

9149






Rule 9-6-3 (req)

Supported

9149






Rule 9-6-4 (req)

Supported

9088






Rule 10-1-1 (adv)

Supported

9174






Rule 10-1-2 (req)

Supported

1749






Rule 10-1-3 (req)

Supported

1748






Rule 10-2-1 (adv)

Supported

9249






Rule 10-3-1 (req)

Not supported






Rule 10-3-2 (req)

Supported

1909






Rule 10-3-3 (req)

Supported

9170






Rule 11-0-1 (req)

Supported

9150






Rule 12-1-1 (req)

Supported

1506






Rule 12-1-2 (adv)

Supported

1928






Rule 12-1-3 (req)

Supported

9169






Rule 12-8-1 (req)

Partially supported6

1938






Rule 12-8-2 (req)

Supported

9151






Rule 14-5-1 (req)

Supported

9248






Rule 14-5-2 (req)

Supported

1789






Rule 14-5-3 (req)

Supported

1797






Rule 14-6-1 (req)

Supported

9250






Rule 14-6-2 (req)

Not supported






Rule 14-7-1 (req)

Not supported






Rule 14-7-2 (req)

Not supported






Rule 14-7-3 (req)

Partially supported7

1576






Rule 14-8-1 (req)

Not supported






Rule 14-8-2 (adv)

Supported

9153






Rule 15-0-1 (doc)

Not statically checkable






Rule 15-0-2 (adv)

Supported

9154






Rule 15-0-3 (req)

Supported

163 164






Rule 15-1-1 (req)

Not supported






Rule 15-1-2 (req)

Supported

1419






Rule 15-1-3 (req)

Supported

9156






Rule 15-3-1 (req)

Supported

1546






Rule 15-3-2 (adv)

Not supported






Rule 15-3-3 (req)

Supported

3433






Rule 15-3-4 (req)

Supported

1560






Rule 15-3-5 (req)

Supported

1752






Rule 15-3-6 (req)

Supported

1775






Rule 15-3-7 (req)

Supported

1127






Rule 15-4-1 (req)

Supported

1548 3548






Rule 15-5-1 (req)

Supported

1546






Rule 15-5-2 (req)

Supported

1549






Rule 15-5-3 (req)

Supported

1546






Rule 16-0-1 (req)

Supported

9019






Rule 16-0-2 (req)

Supported

9158 9159






Rule 16-0-3 (req)

Supported

9021






Rule 16-0-4 (req)

Supported

9026






Rule 16-0-5 (req)

Supported

436






Rule 16-0-6 (req)

Supported

9022






Rule 16-0-7 (req)

Supported

553






Rule 16-0-8 (req)

Supported

16 544 9160






Rule 16-1-1 (req)

Supported

491






Rule 16-1-2 (req)

Supported

8






Rule 16-2-1 (req)

Not supported






Rule 16-2-2 (req)

Not supported






Rule 16-2-3 (req)

Supported

967






Rule 16-2-4 (req)

Supported

9020






Rule 16-2-5 (adv)

Supported

9020






Rule 16-2-6 (req)

Supported

12






Rule 16-3-1 (req)

Supported

9023






Rule 16-3-2 (adv)

Supported

9024






Rule 16-6-1 (doc)

Not statically checkable






Rule 17-0-1 (req)

Supported

9052 9071






Rule 17-0-2 (req)

Supported

9093






Rule 17-0-3 (req)

Not supported






Rule 17-0-4 (req)

Supported






Rule 17-0-5 (req)

Supported

586






Rule 18-0-1 (req)

Supported

829






Rule 18-0-2 (req)

Supported

586






Rule 18-0-3 (req)

Supported

586






Rule 18-0-4 (req)

Supported

829






Rule 18-0-5 (req)

Supported

586






Rule 18-2-1 (req)

Supported

586






Rule 18-4-1 (req)

Supported

586 9173






Rule 18-7-1 (req)

Supported

829






Rule 19-3-1 (req)

Supported

586






Rule 27-0-1 (req)

Supported

829






1Unreferenced global non-static variables are not reported
2Reports overlapping assignments of arrays/unions and attempts to copy an object onto itself
3Only global objects with external linkage that could be defined within a function are reported
4PC-lint Plus reports on differences in type alias names, not "token-for-token" differences.
5All pointer subtraction operations are reported
6Reports on all constructors instead of just copy constructors and reports accesses of global data, not just modifications
7Only violations involving function template specializations are reported

12.10 MISRA C 2004

12.10.1 MISRA C 2004 Guideline Support Summary

Supported

126

96.2%




Comprehensive

124

94.7%




Partial

2

1.5%




Assistance

0

0.0%




Not Supported

5

3.8%




Not Statically Checkable

11




TOTAL

142




12.10.2 MISRA C 2004 Guideline Support Matrix






Rule 1.1 (req)

Supported

9035






Rule 1.2 (req)

Supported

1 2 31 40 54 86 136 401 413 414 415 416 419 424 428 437 449 557 558 564 604 629 719 931 2454 5125 5537






Rule 1.3 (req)

Not statically checkable






Rule 1.4 (req)

Not statically checkable






Rule 1.5 (adv)

Not statically checkable






Rule 2.1 (req)

Supported

9220 9221






Rule 2.2 (req)

Supported

9260






Rule 2.3 (req)

Supported

602






Rule 2.4 (adv)

Supported

602






Rule 3.1 (req)

Not statically checkable






Rule 3.2 (req)

Not statically checkable






Rule 3.3 (adv)

Not statically checkable






Rule 3.4 (req)

Supported

975






Rule 3.5 (req)

Not statically checkable






Rule 3.6 (req)

Supported






Rule 4.1 (req)

Supported

606 2006 9104 9204






Rule 4.2 (req)

Supported

584 739






Rule 5.1 (req)

Not supported






Rule 5.2 (req)

Supported

578






Rule 5.3 (req)

Supported

9276






Rule 5.4 (req)

Supported

407 9275






Rule 5.5 (adv)

Partially supported1

9103






Rule 5.6 (adv)

Not supported






Rule 5.7 (adv)

Not supported






Rule 6.1 (req)

Supported

9128 9209






Rule 6.2 (req)

Supported

9128






Rule 6.3 (adv)

Supported

970






Rule 6.4 (req)

Supported

9212






Rule 6.5 (req)

Supported

9088 9288






Rule 7.1 (req)

Supported

9001 9104






Rule 8.1 (req)

Supported

718 746 937 957






Rule 8.2 (req)

Supported

601 808






Rule 8.3 (req)

Supported

9073 9094






Rule 8.4 (req)

Supported

15 18






Rule 8.5 (req)

Supported

9107






Rule 8.6 (req)

Supported

9108






Rule 8.7 (req)

Supported

9003






Rule 8.8 (req)

Supported

9004






Rule 8.9 (req)

Supported

2467 2469






Rule 8.10 (req)

Supported

765






Rule 8.11 (req)

Supported

401 839






Rule 8.12 (req)

Supported

9067






Rule 9.1 (req)

Supported

530 644






Rule 9.2 (req)

Supported

576 940 9068






Rule 9.3 (req)

Supported

9148






Rule 10.1 (req)

Supported

9225 9226






Rule 10.2 (req)

Supported

9227 9228






Rule 10.3 (req)

Supported

9229






Rule 10.4 (req)

Supported

9230






Rule 10.5 (req)

Supported

9231






Rule 10.6 (req)

Supported

9048






Rule 11.1 (req)

Supported

176 178 9237






Rule 11.2 (req)

Supported

177 179






Rule 11.3 (adv)

Supported

923






Rule 11.4 (adv)

Supported

9087 9287






Rule 11.5 (req)

Supported

9005






Rule 12.1 (adv)

Supported

9050






Rule 12.2 (req)

Supported

564






Rule 12.3 (req)

Supported

9006






Rule 12.4 (req)

Supported

9007






Rule 12.5 (req)

Supported

9240






Rule 12.6 (adv)

Supported

9232






Rule 12.7 (req)

Supported

9233






Rule 12.8 (req)

Supported

9234






Rule 12.9 (req)

Supported

9235






Rule 12.10 (req)

Supported

9008






Rule 12.11 (adv)

Not supported






Rule 12.12 (req)

Supported

9110






Rule 12.13 (adv)

Supported

9049






Rule 13.1 (req)

Supported

720 9236






Rule 13.2 (adv)

Supported

9224






Rule 13.3 (req)

Supported

777 9252






Rule 13.4 (req)

Supported

9009






Rule 13.5 (req)

Supported

440 443






Rule 13.6 (req)

Supported

850






Rule 13.7 (req)

Supported

650 685 774 845






Rule 14.1 (req)

Supported

527 681 827






Rule 14.2 (req)

Supported

505 522






Rule 14.3 (req)

Supported

9138






Rule 14.4 (req)

Supported

801






Rule 14.5 (req)

Supported

9254






Rule 14.6 (req)

Supported

9011






Rule 14.7 (req)

Supported

904






Rule 14.8 (req)

Supported

9012






Rule 14.9 (req)

Supported

9012






Rule 14.10 (req)

Supported

9013 9063






Rule 15.0 (req)

Supported

9042






Rule 15.1 (req)

Supported

44 9055






Rule 15.2 (req)

Supported

9090






Rule 15.3 (req)

Supported

9014 9139






Rule 15.4 (req)

Supported

9238






Rule 15.5 (req)

Supported

764






Rule 16.1 (req)

Supported

9165






Rule 16.2 (req)

Supported

9070






Rule 16.3 (req)

Supported

955






Rule 16.4 (req)

Supported

9072






Rule 16.5 (req)

Supported

937






Rule 16.6 (req)

Supported

118 119






Rule 16.7 (adv)

Supported

818






Rule 16.8 (req)

Supported

533






Rule 16.9 (req)

Supported

9147






Rule 16.10 (req)

Supported

534






Rule 17.1 (req)

Not statically checkable






Rule 17.2 (req)

Not statically checkable






Rule 17.3 (req)

Not statically checkable






Rule 17.4 (req)

Supported

9016 9017 9264






Rule 17.5 (adv)

Supported

9025






Rule 17.6 (req)

Supported

604 733 789






Rule 18.1 (req)

Supported

115






Rule 18.2 (req)

Partially supported2

464 2507






Rule 18.3 (req)

Not statically checkable






Rule 18.4 (req)

Supported

9018






Rule 19.1 (adv)

Supported

9019






Rule 19.2 (adv)

Supported

9020






Rule 19.3 (req)

Supported

12






Rule 19.4 (req)

Not supported






Rule 19.5 (req)

Supported

9158 9159






Rule 19.6 (req)

Supported

9021






Rule 19.7 (adv)

Supported

9026






Rule 19.8 (req)

Supported

131






Rule 19.9 (req)

Supported

436






Rule 19.10 (req)

Supported

9022






Rule 19.11 (req)

Supported

553






Rule 19.12 (req)

Supported

9023






Rule 19.13 (adv)

Supported

9024






Rule 19.14 (req)

Supported

491






Rule 19.15 (req)

Supported

451






Rule 19.16 (req)

Supported

16 544 9160






Rule 19.17 (req)

Supported

8






Rule 20.1 (req)

Supported

980 9071 9083






Rule 20.2 (req)

Supported

9093






Rule 20.3 (req)

Supported

418 419 420 422 668 669 670 671 857 2423 2460 2623 2960






Rule 20.4 (req)

Supported

586






Rule 20.5 (req)

Supported

586






Rule 20.6 (req)

Supported

586






Rule 20.7 (req)

Supported

586






Rule 20.8 (req)

Supported

586 829






Rule 20.9 (req)

Supported

586 829






Rule 20.10 (req)

Supported

586






Rule 20.11 (req)

Supported

586






Rule 20.12 (req)

Supported

586






Rule 21.1 (req)

Supported






1Reuses of function local static variables are not reported
2Reports overlapping assignments of arrays/unions and attempts to copy an object onto itself