| Checker | CERT-C | CERT-CPP | Description | 
| arithOperationsOnVoidPointer | API04-C. Provide a consistent and usable error-checking mechanism | 
 | Fully implemented | 
| arrayIndexOutOfBoundsCond | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| assignmentInAssert | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| autoVariables | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| autovarInvalidDeallocation | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| C01 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | CTR52-CPP. Guarantee that library functions do not overflow | Fully implemented | 
| C02 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| C03 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| C04 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | CTR52-CPP. Guarantee that library functions do not overflow | Fully implemented | 
| C05 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| C06 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| C07 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| C08 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| C08 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |  | Fully implemented | 
| C09 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| C10 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| C101 | ARR32-C. Ensure size arguments for variable length arrays are in a valid range |  | Fully implemented | 
| C107 | ARR36-C. Do not subtract or compare two pointers that do not refer to the same array |  | Fully implemented | 
| C109 | ARR38-C. Guarantee that library functions do not form invalid pointers | 
 | Fully implemented | 
| C11 | CON02-C. Do not use volatile as a synchronization primitive | 
 | Fully implemented | 
| C12 | CON05-C. Do not perform operations that can block while holding a lock | 
 | Fully implemented | 
| C122 | CON40-C. Do not refer to an atomic variable twice in an expression | 
 | Fully implemented | 
| C123 | CON40-C. Do not refer to an atomic variable twice in an expression | 
 | Fully implemented | 
| C126 | DCL01-C. Do not reuse variable names in subscopes | 
 | Fully implemented | 
| C127 | DCL01-C. Do not reuse variable names in subscopes | 
 | Fully implemented | 
| C129 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C13 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C130 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C132 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C133 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C135 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C14 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C15 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C154 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C155 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C16 | DCL13-C. Declare function parameters that are pointers to values not changed by the function as const | 
 | Fully implemented | 
| C17 | FIO39-C. Do not alternately input and output from a stream without an intervening flush or positioning call | FIO50-CPP. Do not alternately input and output from a file stream without an intervening positioning call | Fully implemented | 
| C176 | DCL30-C. Declare objects with appropriate storage durations |  | Fully implemented | 
| C177 | DCL30-C. Declare objects with appropriate storage durations |  | Fully implemented | 
| C178 | DCL30-C. Declare objects with appropriate storage durations |  | Fully implemented | 
| C179 | DCL30-C. Declare objects with appropriate storage durations |  | Fully implemented | 
| C18 | DCL30-C. Declare objects with appropriate storage durations |  | Fully implemented | 
| C19 | DCL31-C. Declare identifiers before using them | 
 | Fully implemented | 
| C20 | DCL39-C. Avoid information leakage when passing a structure across a trust boundary | 
 | Fully implemented | 
| C21 | DCL39-C. Avoid information leakage when passing a structure across a trust boundary | 
 | Fully implemented | 
| C22 | DCL39-C. Avoid information leakage when passing a structure across a trust boundary | 
 | Fully implemented | 
| C23 | DCL39-C. Avoid information leakage when passing a structure across a trust boundary | 
 | Fully implemented | 
| C24 | ARR36-C. Do not subtract or compare two pointers that do not refer to the same array | STR52-CPP. Use valid references, pointers, and iterators to reference elements of a basic_string | Fully implemented | 
| C25 | DCL39-C. Avoid information leakage when passing a structure across a trust boundary | 
 | Fully implemented | 
| C26 | DCL40-C. Do not create incompatible declarations of the same function or object | 
 | Fully implemented | 
| C27 | ENV30-C. Do not modify the object referenced by the return value of certain functions | 
 | Fully implemented | 
| C28 | ENV30-C. Do not modify the object referenced by the return value of certain functions | 
 | Fully implemented | 
| C29 | ENV30-C. Do not modify the object referenced by the return value of certain functions | 
 | Fully implemented | 
| C31 | ERR04-C. Choose an appropriate termination strategy | 
 | Fully implemented | 
| C32 | ERR05-C. Application-independent code should provide error detection without dictating error handling | 
 | Fully implemented | 
| C32 | ERR05-C. Application-independent code should provide error detection without dictating error handling | 
 | Fully implemented | 
| C33 | ERR05-C. Application-independent code should provide error detection without dictating error handling | 
 | Fully implemented | 
| C33 | ERR05-C. Application-independent code should provide error detection without dictating error handling | 
 | Fully implemented | 
| C34 | ERR32-C. Do not rely on indeterminate values of errno | 
 | Fully implemented | 
| C35 | 
 | ERR51-CPP. Handle all exceptions | Fully implemented | 
| C36 | EXP00-C. Use parentheses for precedence of operation | 
 | Fully implemented | 
| C37 | EXP08-C. Ensure pointer arithmetic is used correctly | 
 | Fully implemented | 
| C38 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C39 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C40 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C42 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C44 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C45 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C46 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C46 | EXP09-C. Use sizeof to determine the size of a type or variable | 
 | Fully implemented | 
| C47 | EXP12-C. Do not ignore values returned by functions |  | Fully implemented | 
| C48 | EXP12-C. Do not ignore values returned by functions |  | Fully implemented | 
| C49 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts | 
 | Fully implemented | 
| C50 | EXP14-C. Beware of integer promotion when performing bitwise operations on integer types smaller than int | 
 | Fully implemented | 
| C51 | EXP19-C. Use braces for the body of an if, for, or while statement | 
 | Fully implemented | 
| C52 | DCL03-C. Use a static assertion to test the value of a constant expression | 
 | Fully implemented | 
| C53 | EXP30-C. Do not depend on the order of evaluation for side effects | EXP50-CPP. Do not depend on the order of evaluation for side effects | Fully implemented | 
| C54 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C55 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C56 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C57 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C58 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C59 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C60 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C61 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C62 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C63 | EXP33-C. Do not read uninitialized memory | EXP53-CPP. Do not read uninitialized memory | Fully implemented | 
| C64 | EXP34-C. Do not dereference null pointers |  | Fully implemented | 
| C64 | EXP34-C. Do not dereference null pointers | 
 | Fully implemented | 
| C65 | EXP34-C. Do not dereference null pointers | 
 | Fully implemented | 
| C65 | EXP34-C. Do not dereference null pointers | 
 | Fully implemented | 
| C66 | EXP34-C. Do not dereference null pointers |  | Fully implemented | 
| C67 | EXP36-C. Do not cast pointers into more strictly aligned pointer types | 
 | Fully implemented | 
| C68 | EXP36-C. Do not cast pointers into more strictly aligned pointer types | 
 | Fully implemented | 
| C69 | EXP36-C. Do not cast pointers into more strictly aligned pointer types | 
 | Fully implemented | 
| C70 | EXP36-C. Do not cast pointers into more strictly aligned pointer types | 
 | Fully implemented | 
| C71 | EXP37-C. Call functions with the correct number and type of arguments | 
 | Fully implemented | 
| C73 | EXP40-C. Do not modify constant objects | 
 | Fully implemented | 
| C73 | EXP46-C. Do not use a bitwise operator with a Boolean-like operand |  | Fully implemented | 
| C74 | EXP46-C. Do not use a bitwise operator with a Boolean-like operand | 
 | Fully implemented | 
| C75 | EXP47-C. Do not call va_arg with an argument of the incorrect type | 
 | Fully implemented | 
| C76 | FIO21-C. Do not create temporary files in shared directories | 
 | Fully implemented | 
| C77 | FIO39-C. Do not alternately input and output from a stream without an intervening flush or positioning call |  | Fully implemented | 
| C78 | FIO39-C. Do not alternately input and output from a stream without an intervening flush or positioning call |  | Fully implemented | 
| C79 | FIO39-C. Do not alternately input and output from a stream without an intervening flush or positioning call | 
 | Fully implemented | 
| C80 | FIO39-C. Do not alternately input and output from a stream without an intervening flush or positioning call |  | Fully implemented | 
| C80 | FIO42-C. Close files when they are no longer needed | FIO51-CPP. Close files when they are no longer needed | Fully implemented | 
| C81 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C82 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C83 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C83 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C84 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C85 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C86 | FIO47-C. Use valid format strings |  | Fully implemented | 
| C86 | FIO47-C. Use valid format strings | 
 | Fully implemented | 
| C87 | FLP03-C. Detect and handle floating-point errors | 
 | Fully implemented | 
| c88 | FLP34-C. Ensure that floating-point conversions are within range of the new type |  | Fully implemented | 
| C92 | FLP34-C. Ensure that floating-point conversions are within range of the new type |  | Fully implemented | 
| C999 | INT01-C. Use size_t or rsize_t for all integer values representing the size of an object | 
 | Fully implemented | 
| CbOB | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CconstVariable | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CdLT | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CdoubleFree | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CduplicateCondition | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE8 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| CE11 | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE12 | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE13 | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE256 | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE6 | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE6_S | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CE7 | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CfCO | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CinvalidLifetime | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CinvalidScanfArgType_int | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CiRV | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CiSFW | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| CknownConditionTrueFalse | INT02-C. Understand integer conversion rules | 
 | Fully implemented | 
| clarifyCalculation | INT08-C. Verify that all integer values are in range | 
 | Fully implemented | 
| ClRVNU | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data | 
 | Fully implemented | 
| CmAD | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data | 
 | Fully implemented | 
| CmemleakOnRealloc | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data | 
 | Fully implemented | 
| CmissingReturn | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data | 
 | Fully implemented | 
| CMR | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data | 
 | Fully implemented | 
| CmVOOR | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |  | Fully implemented | 
| CnAS | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |  | Fully implemented | 
| CNI | INT32-C. Ensure that operations on signed integers do not result in overflow | 
 | Fully implemented | 
| CnPDA | INT32-C. Ensure that operations on signed integers do not result in overflow | 
 | Fully implemented | 
| ConfigurationNotChecked | INT32-C. Ensure that operations on signed integers do not result in overflow | 
 | Fully implemented | 
| constParameter | INT33-C. Ensure that division and remainder operations do not result in divide-by-zero errors | 
 | Fully implemented | 
| CoOB | INT33-C. Ensure that division and remainder operations do not result in divide-by-zero errors | 
 | Fully implemented | 
| CPP_01 | INT33-C. Ensure that division and remainder operations do not result in divide-by-zero errors |  | Fully implemented | 
| CPP_02 | INT33-C. Ensure that division and remainder operations do not result in divide-by-zero errors | 
 | Fully implemented | 
| CPP_03 | INT34-C. Do not shift an expression by a negative number of bits or by greater than or equal to the number of bits that exist in the operand |  | Fully implemented | 
| CPP_04 | INT34-C. Do not shift an expression by a negative number of bits or by greater than or equal to the number of bits that exist in the operand |  | Fully implemented | 
| CPP_05 | INT36-C. Converting a pointer to integer or integer to pointer | 
 | Fully implemented | 
| CPP_06 | INT36-C. Converting a pointer to integer or integer to pointer | 
 | Fully implemented | 
| CPP_07 | MEM03-C. Clear sensitive information stored in reusable resources | 
 | Fully implemented | 
| CPP_08 | MEM04-C. Beware of zero-length allocations | 
 | Fully implemented | 
| CPP_09 | MEM04-C. Beware of zero-length allocations | 
 | Fully implemented | 
| CPP_10 | MEM05-C. Avoid large stack allocations | 
 | Fully implemented | 
| CPP_11 | MEM10-C. Define and use a pointer validation function | 
 | Fully implemented | 
| CPP_12 | MEM30-C. Do not access freed memory | MEM50-CPP. Do not access freed memory | Fully implemented | 
| CPP_14 | MEM30-C. Do not access freed memory | MEM50-CPP. Do not access freed memory | Fully implemented | 
| CPP_15 | MEM30-C. Do not access freed memory | MEM50-CPP. Do not access freed memory | Fully implemented | 
| CPP_17 | MEM31-C. Free dynamically allocated memory when no longer needed |  | Fully implemented | 
| CPP_18 | MEM31-C. Free dynamically allocated memory when no longer needed |  | Fully implemented | 
| CPP_22 | MEM31-C. Free dynamically allocated memory when no longer needed | 
 | Fully implemented | 
| CPP_23 | MEM31-C. Free dynamically allocated memory when no longer needed | 
 | Fully implemented | 
| CPP_24 | MEM31-C. Free dynamically allocated memory when no longer needed |  | Fully implemented | 
| CPP_25 | MEM31-C. Free dynamically allocated memory when no longer needed |  | Fully implemented | 
| CPP_26 | MEM31-C. Free dynamically allocated memory when no longer needed |  | Fully implemented | 
| CPP_27 | MEM31-C. Free dynamically allocated memory when no longer needed |  | Fully implemented | 
| CPP_28 | MEM33-C. Allocate and copy structures containing a flexible array member dynamically | MEM53-CPP. Explicitly construct and destruct objects when manually managing object lifetime | Fully implemented | 
| CPP_29 | MEM33-C. Allocate and copy structures containing a flexible array member dynamically | MEM53-CPP. Explicitly construct and destruct objects when manually managing object lifetime | Fully implemented | 
| CPP_31 | MEM34-C. Only free memory allocated dynamically |  | Fully implemented | 
| CPP_32 | MEM34-C. Only free memory allocated dynamically | 
 | Fully implemented | 
| CPP_33 | MEM34-C. Only free memory allocated dynamically | 
 | Fully implemented | 
| CPP_34 | MEM34-C. Only free memory allocated dynamically |  | Fully implemented | 
| CPP_35 | MEM34-C. Only free memory allocated dynamically | 
 | Fully implemented | 
| CPP_36 | MEM34-C. Only free memory allocated dynamically | 
 | Fully implemented | 
| CPP_39 | MEM35-C. Allocate sufficient memory for an object | 
 | Fully implemented | 
| CPP_40 | MEM35-C. Allocate sufficient memory for an object | 
 | Fully implemented | 
| CPP_41 | MEM35-C. Allocate sufficient memory for an object | 
 | Fully implemented | 
| CPP_42 | MEM50-CPP. Do not access freed memory | 
 | Fully implemented | 
| CPP_43 | MEM50-CPP. Do not access freed memory | 
 | Fully implemented | 
| CPP_44 | MSC01-C. Strive for logical completeness | 
 | Fully implemented | 
| CPP_45 | MSC01-C. Strive for logical completeness | 
 | Fully implemented | 
| CPP_46 | MSC01-C. Strive for logical completeness | 
 | Fully implemented | 
| CPP_47 | MSC01-C. Strive for logical completeness | 
 | Fully implemented | 
| CPP_48 | MEM12-C. Consider using a goto chain when leaving a function on error when using and releasing resources | 
 | Fully implemented | 
| CPP_55 | MEM12-C. Consider using a goto chain when leaving a function on error when using and releasing resources | 
 | Fully implemented | 
| CPP_56 | MEM12-C. Consider using a goto chain when leaving a function on error when using and releasing resources | 
 | Fully implemented | 
| CPP_57 | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPP_58 | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPP_59 | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPP_60 | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPP_61 | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPP_62 | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPP_uninitvar | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPCrypt | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPDSLHardcoded | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPDSLRAND | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPDSLWES | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CpPED | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPEnterCriticalSection | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPIsBadWritePtr | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPLoadLibrary | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPLoop | MSC07-C. Detect and remove dead code | 
 | Fully implemented | 
| CPPOftenMisused | MSC09-C. Character encoding: Use subset of ASCII for safety | 
 | Fully implemented | 
| CPPPBE | MSC11-C. Incorporate diagnostic tests using assertions | 
 | Fully implemented | 
| CPPStackBased | MSC11-C. Incorporate diagnostic tests using assertions | 
 | Fully implemented | 
| CPtr | MSC12-C. Detect and remove code that has no effect or is never executed | 
 | Fully implemented | 
| CredundantInitialization | MSC12-C. Detect and remove code that has no effect or is never executed | 
 | Fully implemented | 
| CreturnDanglingLifetime | MSC12-C. Detect and remove code that has no effect or is never executed | 
 | Fully implemented | 
| CsFPC | MSC18-C. Be careful while handling sensitive data, such as passwords, in program code | 
 | Fully implemented | 
| CsTMB | MSC18-C. Be careful while handling sensitive data, such as passwords, in program code | 
 | Fully implemented | 
| CstrdupCalled | MSC18-C. Be careful while handling sensitive data, such as passwords, in program code | 
 | Fully implemented | 
| ctuArrayIndex | MSC18-C. Be careful while handling sensitive data, such as passwords, in program code | 
 | Fully implemented | 
| ctuNullPointer | MSC20-C. Do not use a switch statement to transfer control into a complex block | 
 | Fully implemented | 
| ctuOneDefinitionRuleViolation | MSC21-C. Use robust loop termination conditions | 
 | Fully implemented | 
| CuEV | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| CvariableScope | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| CWE395TEST_2_CPP | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| CWE561P25 | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| CwPSPPE | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| CzDC | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| deallocret | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| integerOverflowCond | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| invalidContainer | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| invalidFunctionArg | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| leakUnsafeArgAlloc | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| memleak | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| memleakOnRealloc | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| noCopyConstructor | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| noOperatorEq | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| nullPointerRedundantCheck | MSC24-C. Do not use deprecated or obsolescent functions | 
 | Fully implemented | 
| oppositeExpression | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| redundantPointerOp | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_01 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_02 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_03 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_04 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_05 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_06 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_07 | MSC30-C. Do not use the rand() function for generating pseudorandom numbers | MSC50-CPP. Do not use std::rand() for generating pseudorandom numbers | Fully implemented | 
| RTOS_08 | MSC32-C. Properly seed pseudorandom number generators | MSC51-CPP. Ensure your random number generator is properly seeded | Fully implemented | 
| RTOS_09 | MSC37-C. Ensure that control never reaches the end of a non-void function | MSC52-CPP. Value-returning functions must return a value from all exit paths | Fully implemented | 
| RTOS_10 | MSC37-C. Ensure that control never reaches the end of a non-void function | MSC52-CPP. Value-returning functions must return a value from all exit paths | Fully implemented | 
| RTOS_11 | MSC37-C. Ensure that control never reaches the end of a non-void function | MSC52-CPP. Value-returning functions must return a value from all exit paths | Fully implemented | 
| RTOS_12 | MSC37-C. Ensure that control never reaches the end of a non-void function | MSC52-CPP. Value-returning functions must return a value from all exit paths | Fully implemented | 
| RTOS_13 | MSC39-C. Do not call va_arg() on a va_list that has an indeterminate value | 
 | Fully implemented | 
| RTOS_14 | MSC41-C. Never hard code sensitive information | 
 | Fully implemented | 
| RTOS_15 | MSC41-C. Never hard code sensitive information | 
 | Fully implemented | 
| RTOS_16 | MSC41-C. Never hard code sensitive information | 
 | Fully implemented | 
| RTOS_17 | MSC41-C. Never hard code sensitive information | 
 | Fully implemented | 
| RTOS_18 | MSC25-C. Do not use insecure or weak cryptographic algorithms | 
 | Fully implemented | 
| RTOS_19 | POS01-C. Check for the existence of links when dealing with files | 
 | Fully implemented | 
| RTOS_20 | POS52-C. Do not perform operations that can block while holding a POSIX lock | 
 | Fully implemented | 
| RTOS_22 | PRE04-C. Do not reuse a standard header file name | 
 | Fully implemented | 
| RTOS_23 | PRE04-C. Do not reuse a standard header file name | 
 | Fully implemented | 
| RTOS_24 | PRE04-C. Do not reuse a standard header file name | 
 | Fully implemented | 
| RTOS_25 | PRE04-C. Do not reuse a standard header file name | 
 | Fully implemented | 
| RTOS_26 | PRE13-C. Use the Standard predefined macros to test for versions and features. | 
 | Fully implemented | 
| RTOS_27 | PRE30-C. Do not create a universal character name through concatenation |  | Fully implemented | 
| RTOS_28 | PRE31-C. Avoid side effects in arguments to unsafe macros | 
 | Fully implemented | 
| RTOS_29 | PRE31-C. Avoid side effects in arguments to unsafe macros | 
 | Fully implemented | 
| RTOS_30 | PRE31-C. Avoid side effects in arguments to unsafe macros | 
 | Fully implemented | 
| RTOS_31 | STR05-C. Use pointers to const when referring to string literals | 
 | Fully implemented | 
| RTOS_33 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator | STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator | Fully implemented | 
| RTOS_34 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator | STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator | Fully implemented | 
| shadowVariable | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator | STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator | Fully implemented | 
| shiftTooManyBits | STR32-C. Do not pass a non-null-terminated character sequence to a library function that expects a string | STR51-CPP. Do not attempt to create a std::string from a null pointer | Fully implemented | 
| UNSAFE_01 | STR37-C. Arguments to character-handling functions must be representable as an unsigned char | 
 | Fully implemented | 
| UNSAFE_02 | STR38-C. Do not confuse narrow and wide character strings and functions | 
 | Fully implemented | 
| UNSAFE_03 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator | STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator | Fully implemented | 
| UNSAFE_04 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator | STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator | Fully implemented | 
| UNSAFE_05 | WIN02-C. Restrict privileges when spawning child processes | 
 | Fully implemented | 
| UNSAFE_06 | 
 | OOP52-CPP. Do not delete a polymorphic object without a virtual destructor | Fully implemented | 
| UNSAFE_07 | 
 | OOP50-CPP. Do not invoke virtual functions from constructors or destructors | Fully implemented | 
| UNSAFE_08 | 
 | CON53-CPP. Avoid deadlock by locking in a predefined order | Fully implemented | 
| UNSAFE_09 | 
 | DCL50-CPP. Do not define a C-style variadic function | Fully implemented | 
| va_end_missing | 
 | ERR59-CPP. Do not throw an exception across execution boundaries | Fully implemented | 
| va_start_subsequentCalls | 
 | MEM56-CPP. Do not store an already-owned pointer value in an unrelated smart pointer | Fully implemented | 
| wcsdupCalled | 
 | MEM51-CPP. Properly deallocate dynamically allocated resources | Fully implemented | 
| zerodiv | 
 | 
 | Fully implemented |