Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Checker

Guideline

V509 DCL57-CPP. Do not let exceptions escape from destructors or deallocation functions
V515 MEM51-CPP. Properly deallocate dynamically allocated resources
V521 EXP50-CPP. Do not depend on the order of evaluation for side effects
V522 MEM52-CPP. Detect and handle memory allocation errors
V539 CTR53-CPP. Use valid iterator ranges
V546 EXP53-CPP. Do not read uninitialized memory
V554 MEM51-CPP. Properly deallocate dynamically allocated resources
V573 EXP53-CPP. Do not read uninitialized memory
V586 MEM50-CPP. Do not access freed memory
V591 MSC52-CPP. Value-returning functions must return a value from all exit paths
V598 EXP62-CPP. Do not access the bits of an object representation that are not part of the object's value representation
V598 OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
V599 OOP52-CPP. Do not delete a polymorphic object without a virtual destructor
V611 MEM51-CPP. Properly deallocate dynamically allocated resources
V614 EXP53-CPP. Do not read uninitialized memory
V662 CTR53-CPP. Use valid iterator ranges
V670 EXP53-CPP. Do not read uninitialized memory
V679 EXP53-CPP. Do not read uninitialized memory
V689 OOP52-CPP. Do not delete a polymorphic object without a virtual destructor
V701 MEM51-CPP. Properly deallocate dynamically allocated resources
V708 EXP50-CPP. Do not depend on the order of evaluation for side effects
V730 EXP53-CPP. Do not read uninitialized memory
V746 ERR61-CPP. Catch exceptions by lvalue reference
V748 MEM51-CPP. Properly deallocate dynamically allocated resources
V749 MEM53-CPP. Explicitly construct and destruct objects when manually managing object lifetime
V752 MEM54-CPP. Provide placement new with properly aligned pointers to sufficient storage capacity
V758 EXP54-CPP. Do not access an object outside of its lifetime
V759 ERR54-CPP. Catch handlers should order their parameter types from most derived to least derived
V773 MEM51-CPP. Properly deallocate dynamically allocated resources
V774 MEM50-CPP. Do not access freed memory
V777 CTR56-CPP. Do not use pointer arithmetic on polymorphic objects
V780 EXP62-CPP. Do not access the bits of an object representation that are not part of the object's value representation
V780 OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
V781 CTR50-CPP. Guarantee that container indices and iterators are within the valid range
V783 CTR51-CPP. Use valid references, pointers, and iterators to reference elements of a container
V788 EXP53-CPP. Do not read uninitialized memory
V789 CTR53-CPP. Use valid iterator ranges
V816 ERR61-CPP. Catch exceptions by lvalue reference
V1006 MEM56-CPP. Do not store an already-owned pointer value in an unrelated smart pointer
V1007 EXP53-CPP. Do not read uninitialized memory
V1016 INT50-CPP. Do not cast to an out-of-range enumeration value
V1023 ERR56-CPP. Guarantee exception safety
V1030 EXP63-CPP. Do not rely on the value of a moved-from object
V1041 EXP54-CPP. Do not access an object outside of its lifetime
V1047 EXP61-CPP. A lambda object must not outlive any of its reference captured objects
V1050 EXP53-CPP. Do not read uninitialized memory
V1053 OOP50-CPP. Do not invoke virtual functions from constructors or destructors
V1054 OOP51-CPP. Do not slice derived objects