Checker | Guideline |
|---|
| V502 | EXP00-C. Use parentheses for precedence of operation |
| V503 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V505 | MEM05-C. Avoid large stack allocations |
| V506 | DCL30-C. Declare objects with appropriate storage durations |
| V507 | DCL30-C. Declare objects with appropriate storage durations |
| V510 | FIO47-C. Use valid format strings |
| V511 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V512 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V512 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V513 | MSC24-C. Do not use deprecated or obsolescent functions |
| V514 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V516 | EXP16-C. Do not compare function pointers to constant values |
| V517 | MSC01-C. Strive for logical completeness |
| V518 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator |
| V519 | MSC13-C. Detect and remove unused values |
| V520 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V521 | EXP10-C. Do not depend on the order of evaluation of subexpressions or the order in which side effects take place |
| V522 | EXP34-C. Do not dereference null pointers |
| V527 | INT36-C. Converting a pointer to integer or integer to pointer |
| V528 | INT36-C. Converting a pointer to integer or integer to pointer |
| V529 | EXP15-C. Do not place a semicolon on the same line as an if, for, or while statement |
| V530 | EXP12-C. Do not ignore values returned by functions |
| V531 | MEM35-C. Allocate sufficient memory for an object |
| V532 | EXP30-C. Do not depend on the order of evaluation for side effects |
| V533 | MSC01-C. Strive for logical completeness |
| V534 | MSC01-C. Strive for logical completeness |
| V535 | MSC01-C. Strive for logical completeness |
| V536 | DCL18-C. Do not begin integer constants with 0 when specifying a decimal value |
| V540 | EXP37-C. Call functions with the correct number and type of arguments |
| V541 | EXP37-C. Call functions with the correct number and type of arguments |
| V542 | INT36-C. Converting a pointer to integer or integer to pointer |
| V548 | EXP36-C. Do not cast pointers into more strictly aligned pointer types |
| V549 | EXP37-C. Call functions with the correct number and type of arguments |
| V550 | FLP02-C. Avoid using floating-point numbers when precise computation is needed |
| V551 | MSC12-C. Detect and remove code that has no effect or is never executed |
| V555 | INT02-C. Understand integer conversion rules |
| V556 | MSC01-C. Strive for logical completeness |
| V557 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V558 | DCL30-C. Declare objects with appropriate storage durations |
| V559 | EXP45-C. Do not perform assignments in selection statements |
| V561 | DCL01-C. Do not reuse variable names in subscopes |
| V562 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V563 | EXP19-C. Use braces for the body of an if, for, or while statement |
| V564 | EXP46-C. Do not use a bitwise operator with a Boolean-like operand |
| V566 | INT36-C. Converting a pointer to integer or integer to pointer |
| V567 | EXP30-C. Do not depend on the order of evaluation for side effects |
| V568 | EXP44-C. Do not rely on side effects in operands to sizeof, _Alignof, or _Generic |
| V568 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V569 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V573 | EXP33-C. Do not read uninitialized memory |
| V574 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V575 | EXP37-C. Call functions with the correct number and type of arguments |
| V576 | FIO47-C. Use valid format strings |
| V576 | DCL11-C. Understand the type issues associated with variadic functions |
| V577 | MSC01-C. Strive for logical completeness |
| V579 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V580 | EXP39-C. Do not access a variable through a pointer of an incompatible type |
| V582 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V585 | MEM34-C. Only free memory allocated dynamically |
| V586 | MEM30-C. Do not access freed memory |
| V590 | MSC01-C. Strive for logical completeness |
| V593 | EXP00-C. Use parentheses for precedence of operation |
| V594 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V595 | EXP34-C. Do not dereference null pointers |
| V596 | MSC13-C. Detect and remove unused values |
| V597 | MSC06-C. Beware of compiler optimizations |
| V600 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V601 | INT36-C. Converting a pointer to integer or integer to pointer |
| V603 | MSC13-C. Detect and remove unused values |
| V604 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V605 | INT02-C. Understand integer conversion rules |
| V606 | MSC12-C. Detect and remove code that has no effect or is never executed |
| V609 | INT33-C. Ensure that division and remainder operations do not result in divide-by-zero errors |
| V610 | 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 |
| V612 | MSC01-C. Strive for logical completeness |
| V613 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V614 | EXP33-C. Do not read uninitialized memory |
| V615 | FLP34-C. Ensure that floating-point conversions are within range of the new type |
| V618 | FIO30-C. Exclude user input from format strings |
| V619 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V620 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V621 | MSC21-C. Use robust loop termination conditions |
| V622 | DCL41-C. Do not declare variables inside a switch statement before the first case label |
| V623 | DCL30-C. Declare objects with appropriate storage durations |
| V628 | EXP19-C. Use braces for the body of an if, for, or while statement |
| V629 | INT00-C. Understand the data model used by your implementation(s) |
| V632 | EXP37-C. Call functions with the correct number and type of arguments |
| V633 | EXP45-C. Do not perform assignments in selection statements |
| V634 | EXP00-C. Use parentheses for precedence of operation |
| V635 | MEM35-C. Allocate sufficient memory for an object |
| V636 | FLP06-C. Convert integers to floating point for floating-point operations |
| V639 | EXP37-C. Call functions with the correct number and type of arguments |
| V640 | EXP19-C. Use braces for the body of an if, for, or while statement |
| V641 | EXP36-C. Do not cast pointers into more strictly aligned pointer types |
| V642 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V643 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V643 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V645 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V645 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator |
| V647 | INT36-C. Converting a pointer to integer or integer to pointer |
| V648 | EXP00-C. Use parentheses for precedence of operation |
| V649 | MSC12-C. Detect and remove code that has no effect or is never executed |
| V650 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V658 | INT30-C. Ensure that unsigned integer operations do not wrap |
| V664 | EXP34-C. Do not dereference null pointers |
| V665 | MSC00-C. Compile cleanly at high warning levels |
| V666 | EXP37-C. Call functions with the correct number and type of arguments |
| V670 | EXP33-C. Do not read uninitialized memory |
| V671 | EXP37-C. Call functions with the correct number and type of arguments |
| V673 | INT02-C. Understand integer conversion rules |
| V674 | FLP36-C. Preserve precision when converting integral values to floating-point type |
| V675 | STR30-C. Do not attempt to modify string literals |
| V675 | ENV30-C. Do not modify the object referenced by the return value of certain functions |
| V676 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V677 | DCL37-C. Do not declare or define a reserved identifier |
| V679 | EXP33-C. Do not read uninitialized memory |
| V681 | EXP10-C. Do not depend on the order of evaluation of subexpressions or the order in which side effects take place |
| V687 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V688 | DCL01-C. Do not reuse variable names in subscopes |
| V692 | STR32-C. Do not pass a non-null-terminated character sequence to a library function that expects a string |
| V694 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V695 | MSC01-C. Strive for logical completeness |
| V696 | MSC01-C. Strive for logical completeness |
| V697 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V698 | EXP12-C. Do not ignore values returned by functions |
| V699 | EXP45-C. Do not perform assignments in selection statements |
| V701 | WIN30-C. Properly pair allocation and deallocation functions |
| V703 | DCL01-C. Do not reuse variable names in subscopes |
| V705 | EXP19-C. Use braces for the body of an if, for, or while statement |
| V709 | EXP13-C. Treat relational and equality operators as if they were nonassociative |
| V711 | DCL01-C. Do not reuse variable names in subscopes |
| V712 | MSC06-C. Beware of compiler optimizations |
| V713 | EXP34-C. Do not dereference null pointers |
| V714 | MSC13-C. Detect and remove unused values |
| V715 | EXP15-C. Do not place a semicolon on the same line as an if, for, or while statement |
| V716 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V719 | MSC01-C. Strive for logical completeness |
| V721 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V722 | MSC01-C. Strive for logical completeness |
| V723 | DCL30-C. Declare objects with appropriate storage durations |
| V724 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V726 | MEM34-C. Only free memory allocated dynamically |
| V727 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator |
| V732 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V733 | PRE01-C. Use parentheses within macros around parameter names |
| V736 | ARR36-C. Do not subtract or compare two pointers that do not refer to the same array |
| V738 | DCL30-C. Declare objects with appropriate storage durations |
| V739 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V742 | EXP37-C. Call functions with the correct number and type of arguments |
| V743 | EXP37-C. Call functions with the correct number and type of arguments |
| V744 | MSC13-C. Detect and remove unused values |
| V747 | MSC01-C. Strive for logical completeness |
| V751 | MSC13-C. Detect and remove unused values |
| V755 | STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator |
| V757 | EXP12-C. Do not ignore values returned by functions |
| V763 | MSC13-C. Detect and remove unused values |
| V764 | EXP37-C. Call functions with the correct number and type of arguments |
| V769 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V772 | MSC15-C. Do not depend on undefined behavior |
| V773 | MEM31-C. Free dynamically allocated memory when no longer needed |
| V774 | MEM30-C. Do not access freed memory |
| V779 | MSC12-C. Detect and remove code that has no effect or is never executed |
| V781 | MEM35-C. Allocate sufficient memory for an object |
| V781 | API00-C. Functions should validate their parameters |
| V782 | ARR36-C. Do not subtract or compare two pointers that do not refer to the same array |
| V784 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V785 | MSC01-C. Strive for logical completeness |
| V786 | MSC01-C. Strive for logical completeness |
| V793 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V796 | MSC17-C. Finish every set of statements associated with a case label with a break statement |
| V797 | EXP12-C. Do not ignore values returned by functions |
| V798 | ARR02-C. Explicitly specify array bounds, even if implicitly defined by an initializer |
| V821 | DCL19-C. Minimize the scope of variables and functions |
| V1001 | MSC13-C. Detect and remove unused values |
| V1004 | EXP34-C. Do not dereference null pointers |
| V1004 | EXP37-C. Call functions with the correct number and type of arguments |
| V1004 | EXP08-C. Ensure pointer arithmetic is used correctly |
| V1012 | INT30-C. Ensure that unsigned integer operations do not wrap |
| V1014 | FLP37-C. Do not use object representations to compare floating-point values |
| V1015 | EXP46-C. Do not use a bitwise operator with a Boolean-like operand |
| V1019 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V1024 | FIO40-C. Reset strings on fgets() or fgetws() failure |
| V1026 | INT32-C. Ensure that operations on signed integers do not result in overflow |
| V1028 | INT30-C. Ensure that unsigned integer operations do not wrap |
| V1029 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V1031 | DCL31-C. Declare identifiers before using them |
| V1032 | EXP36-C. Do not cast pointers into more strictly aligned pointer types |
| V1034 | FLP30-C. Do not use floating-point variables as loop counters |
| V1035 | FIO44-C. Only use values for fsetpos() that are returned from fgetpos() |
| V1046 | INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data |
| V1050 | EXP33-C. Do not read uninitialized memory |
| V1058 | EXP16-C. Do not compare function pointers to constant values |
| V1070 | INT32-C. Ensure that operations on signed integers do not result in overflow |
| V1072 | MEM03-C. Clear sensitive information stored in reusable resources |
| V1081 | INT32-C. Ensure that operations on signed integers do not result in overflow |
| V1083 | INT32-C. Ensure that operations on signed integers do not result in overflow |
| V1085 | INT32-C. Ensure that operations on signed integers do not result in overflow |
| V1086 | ARR30-C. Do not form or use out-of-bounds pointers or array subscripts |
| V1086 | ARR01-C. Do not apply the sizeof operator to a pointer when taking the size of an array |
| V1088 | CON43-C. Do not allow data races in multithreaded code |
| V1091 | INT36-C. Converting a pointer to integer or integer to pointer |
| V1103 | EXP42-C. Do not compare padding data |
| V2001 | MSC24-C. Do not use deprecated or obsolescent functions |
| V2002 | MSC24-C. Do not use deprecated or obsolescent functions |
| V2003 | FLP34-C. Ensure that floating-point conversions are within range of the new type |
| V2004 | FLP34-C. Ensure that floating-point conversions are within range of the new type |
| V2015 | DCL01-C. Do not reuse variable names in subscopes |
| V5003 | MSC13-C. Detect and remove unused values |
| V5004 | INT00-C. Understand the data model used by your implementation(s) |
| V5005 | INT30-C. Ensure that unsigned integer operations do not wrap |
| V5006 | INT02-C. Understand integer conversion rules |
| V5010 | INT32-C. Ensure that operations on signed integers do not result in overflow |
| V5011 | INT30-C. Ensure that unsigned integer operations do not wrap |