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:Axivion Bauhaus Suite_Vcplusplus:
Axivion Bauhaus Suite_V

Checker

Guideline

CertC++-CON52 CON52-CPP. Prevent data races when accessing bit-fields from multiple threads
CertC++-CTR56 CTR56-CPP. Do not use pointer arithmetic on polymorphic objects
CertC++-DCL50 DCL50-CPP. Do not define a C-style variadic function
CertC++-DCL51 DCL51-CPP. Do not declare or define a reserved identifier
CertC++-DCL52 DCL52-CPP. Never qualify a reference type with const or volatile
CertC++-DCL54 DCL54-CPP. Overload allocation and deallocation functions as a pair in the same scope
CertC++-DCL55 DCL55-CPP. Avoid information leakage when passing a class object across a trust boundary
CertC++-DCL57 DCL57-CPP. Do not let exceptions escape from destructors or deallocation functions
CertC++-DCL58 DCL58-CPP. Do not modify the standard namespaces
CertC++-DCL59 DCL59-CPP. Do not define an unnamed namespace in a header file
CertC++-DCL60 DCL60-CPP. Obey the one-definition rule
CertC++-ERR51 ERR51-CPP. Handle all exceptions
CertC++-ERR52 ERR52-CPP. Do not use setjmp() or longjmp()
CertC++-ERR53 ERR53-CPP. Do not reference base classes or class data members in a constructor or destructor function-try-block handler
CertC++-ERR54 ERR54-CPP. Catch handlers should order their parameter types from most derived to least derived
CertC++-ERR55 ERR55-CPP. Honor exception specifications
CertC++-ERR58 ERR58-CPP. Handle all exceptions thrown before main() begins executing
CertC++-ERR61 ERR61-CPP. Catch exceptions by lvalue reference
CertC++-ERR62 ERR62-CPP. Detect errors when converting a string to a number
CertC++-EXP50 EXP50-CPP. Do not depend on the order of evaluation for side effects
CertC++-EXP52 EXP52-CPP. Do not rely on side effects in unevaluated operands
CertC++-EXP55 EXP55-CPP. Do not access a cv-qualified object through a cv-unqualified type
CertC++-EXP59 EXP59-CPP. Use offsetof() on valid types and members
CertC++-FIO50 FIO50-CPP. Do not alternately input and output from a file stream without an intervening positioning call
CertC++-INT50 INT50-CPP. Do not cast to an out-of-range enumeration value
CertC++-MEM50 MEM50-CPP. Do not access freed memory
CertC++-MEM51 MEM51-CPP. Properly deallocate dynamically allocated resources
CertC++-MEM54 MEM54-CPP. Provide placement new with properly aligned pointers to sufficient storage capacity
CertC++-MEM56 MEM56-CPP. Do not store an already-owned pointer value in an unrelated smart pointer
CertC++-MSC50 MSC50-CPP. Do not use std::rand() for generating pseudorandom numbers
CertC++-MSC51 MSC51-CPP. Ensure your random number generator is properly seeded
CertC++-MSC52 MSC52-CPP. Value-returning functions must return a value from all exit paths
CertC++-MSC53 MSC53-CPP. Do not return from a function declared [[noreturn]]
CertC++-OOP50 OOP50-CPP. Do not invoke virtual functions from constructors or destructors
CertC++-OOP52 OOP52-CPP. Do not delete a polymorphic object without a virtual destructor
CertC++-OOP53 OOP53-CPP. Write constructor member initializers in the canonical order
CertC++-OOP55 OOP55-CPP. Do not use pointer-to-member operators to access nonexistent members