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 |