Versions Compared

Key

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

...

Tip

The table below can be re-ordered, by clicking column headers.

...

Include Page
cplusplus:RuleChecker_Vcplusplus:
RuleChecker_V

Checker

Guideline

bad-function (AUTOSAR.26.5.1A) MSC50-CPP. Do not use std::rand() for generating pseudorandom numbers
cast-integer-to-enum INT50-CPP. Do not cast to an out-of-range enumeration value
catch-class-by-value ERR61-CPP. Catch exceptions by lvalue reference
default-construction MSC51-CPP. Ensure your random number generator is properly seeded
default-new-overaligned-type MEM57-CPP. Avoid using default operator new for over-aligned types
definition-duplicate DCL60-CPP. Obey the one-definition rule
delete-with-incomplete-type EXP57-CPP. Do not cast or delete pointers to incomplete classes
delete-without-noexcept DCL57-CPP. Do not let exceptions escape from destructors or deallocation functions
destructor-without-noexcept DCL57-CPP. Do not let exceptions escape from destructors or deallocation functions
early-catch-all ERR51-CPP. Handle all exceptions
exception-caught-by-earlier-handler ERR54-CPP. Catch handlers should order their parameter types from most derived to least derived
exception-handler-member-access ERR53-CPP. Do not reference base classes or class data members in a constructor or destructor function-try-block handler
external-file-spreading DCL60-CPP. Obey the one-definition rule
function-ellipsis DCL50-CPP. Do not define a C-style variadic function
include-setjmp ERR52-CPP. Do not use setjmp() or longjmp()
include-time OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
initializer-list-order OOP53-CPP. Write constructor member initializers in the canonical order
invalid-noreturn MSC53-CPP. Do not return from a function declared [[noreturn]]
main-function-catch-all ERR51-CPP. Handle all exceptions
new-delete-pairwise DCL54-CPP. Overload allocation and deallocation functions as a pair in the same scope
non-virtual-public-destructor-in-non-final-class OOP52-CPP. Do not delete a polymorphic object without a virtual destructor
pointer-qualifier-cast-const EXP55-CPP. Do not access a cv-qualified object through a cv-unqualified type
pointer-qualifier-cast-volatile EXP55-CPP. Do not access a cv-qualified object through a cv-unqualified type
potentially-throwing-static-initialization ERR58-CPP. Handle all exceptions thrown before main() begins executing
reserved-identifier DCL51-CPP. Do not declare or define a reserved identifier
return-implicit MSC52-CPP. Value-returning functions must return a value from all exit paths
return-reference-local EXP54-CPP. Do not access an object outside of its lifetime
sizeof EXP52-CPP. Do not rely on side effects in unevaluated operands
stdlib-use ERR50-CPP. Do not abruptly terminate the program
stdlib-use OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
stdlib-use-ato OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
stdlib-use-getenv OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
stdlib-use-string-unbounded OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
stdlib-use-system OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions
stream-input-char-array STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator
type-compatibility DCL60-CPP. Obey the one-definition rule
type-file-spreading DCL60-CPP. Obey the one-definition rule
undefined-extern DCL60-CPP. Obey the one-definition rule
undefined-extern-pure-virtual DCL60-CPP. Obey the one-definition rule
unhandled-throw-noexcept ERR55-CPP. Honor exception specifications
uninitialized-read EXP53-CPP. Do not read uninitialized memory
unnamed-namespace-header DCL59-CPP. Do not define an unnamed namespace in a header file
virtual-call-in-constructor OOP50-CPP. Do not invoke virtual functions from constructors or destructors volatile DCL52-CPP. Never qualify a reference type with const or volatile