Main Content

Polyspace Bug Finder Defects Checkers Enabled by Default

When you start a Bug Finder analysis, these checkers are enabled by default. To view a list of checkers that are enabled by default when you analyze generated code, see Polyspace Bug Finder Defects Checkers Enabled by Default for Generated Code.

DefectCommand-line Name
Absorption of float operandFLOAT_ABSORPTION
Accessing object with temporary lifetimeTEMP_OBJECT_ACCESS
Alignment changed after memory reallocationALIGNMENT_CHANGE
Alternating input and output from a stream without flush or positioning callIO_INTERLEAVING
Array access out of boundsOUT_BOUND_ARRAY
AssertionASSERT
Atomic load and store sequence not atomicATOMIC_VAR_SEQUENCE_NOT_ATOMIC
Atomic variable accessed twice in an expressionATOMIC_VAR_ACCESS_TWICE
Base class assignment operator not calledMISSING_BASE_ASSIGN_OP_CALL
Base class destructor not virtualDTOR_NOT_VIRTUAL
Buffer overflow from incorrect string format specifierSTR_FORMAT_BUFFER_OVERFLOW
Call through non-prototyped function pointerUNPROTOTYPED_FUNC_CALL
Character value absorbed into EOFCHAR_EOF_CONFUSED
Closing a previously closed resourceDOUBLE_RESOURCE_CLOSE
Conversion or deletion of incomplete class pointerINCOMPLETE_CLASS_PTR
Copy constructor not called in initialization listMISSING_COPY_CTOR_CALL
Copy operation modifying source operandCOPY_MODIFYING_SOURCE
Data raceDATA_RACE
Data race on adjacent bit fieldsDATA_RACE_BIT_FIELDS
Data race through standard library function callDATA_RACE_STD_LIB
Dead codeDEAD_CODE
DeadlockDEADLOCK
Deallocation of previously deallocated pointerDOUBLE_DEALLOCATION
Declaration mismatchDECL_MISMATCH
Destination buffer overflow in string manipulationSTRLIB_BUFFER_OVERFLOW
Destination buffer underflow in string manipulationSTRLIB_BUFFER_UNDERFLOW
Double lockDOUBLE_LOCK
Double unlockDOUBLE_UNLOCK
Environment pointer invalidated by previous operationINVALID_ENV_POINTER
Errno not resetMISSING_ERRNO_RESET
Exception caught by valueEXCP_CAUGHT_BY_VALUE
Exception handler hidden by previous handlerEXCP_HANDLER_HIDDEN
Float conversion overflowFLOAT_CONV_OVFL
Float division by zeroFLOAT_ZERO_DIV
Format string specifiers and arguments mismatchSTRING_FORMAT
Improper array initializationIMPROPER_ARRAY_INIT
Incompatible types prevent overridingVIRTUAL_FUNC_HIDING
Incorrect data type passed to va_argVA_ARG_INCORRECT_TYPE
Incorrect pointer scalingBAD_PTR_SCALING
Incorrect type data passed to va_startVA_START_INCORRECT_TYPE
Incorrect use of offsetof in C++OFFSETOF_MISUSE
Incorrect use of va_startVA_START_MISUSE
Incorrect value forwardingINCORRECT_VALUE_FORWARDING
Infinite loopINFINITE_LOOP
Inline constraint not respectedINLINE_CONSTRAINT_NOT_RESPECTED
Integer conversion overflowINT_CONV_OVFL
Integer division by zeroINT_ZERO_DIV
Invalid assumptions about memory organizationINVALID_MEMORY_ASSUMPTION
Invalid deletion of pointerBAD_DELETE
Invalid free of pointerBAD_FREE
Invalid use of = operatorBAD_EQUAL_USE
Invalid use of == operatorBAD_EQUAL_EQUAL_USE
Invalid use of standard library floating point routineFLOAT_STD_LIB
Invalid use of standard library integer routineINT_STD_LIB
Invalid use of standard library memory routineMEM_STD_LIB
Invalid use of standard library routineOTHER_STD_LIB
Invalid use of standard library string routineSTR_STD_LIB
Invalid va_list argumentINVALID_VA_LIST_ARG
Lambda used as typeid operandLAMBDA_TYPE_MISUSE
Memory comparison of padding dataMEMCMP_PADDING_DATA
Memory comparison of stringsMEMCMP_STRINGS
Missing lockBAD_UNLOCK
Missing null in string arrayMISSING_NULL_CHAR
Missing return statementMISSING_RETURN
Missing unlockBAD_LOCK
Misuse of a FILE objectFILE_OBJECT_MISUSE
Misuse of errnoERRNO_MISUSE
Misuse of errno in a signal handlerSIG_HANDLER_ERRNO_MISUSE
Misuse of sign-extended character valueCHARACTER_MISUSE
Misuse of structure with flexible array memberFLEXIBLE_ARRAY_MEMBER_STRUCT_MISUSE
Move operation on const objectMOVE_CONST_OBJECT
Noexcept function exits with exceptionNOEXCEPT_FUNCTION_THROWS
Non-initialized pointerNON_INIT_PTR
Non-initialized variableNON_INIT_VAR
Null pointerNULL_PTR
Object slicingOBJECT_SLICING
Opening previously opened resourceDOUBLE_RESOURCE_OPEN
Operator new not overloaded for possibly overaligned classMISSING_OVERLOAD_NEW_FOR_ALIGNED_OBJ
Partial override of overloaded virtual functionsPARTIAL_OVERRIDE
Partially accessed arrayPARTIALLY_ACCESSED_ARRAY
Pointer access out of boundsOUT_BOUND_PTR
Pointer or reference to stack variable leaving scopeLOCAL_ADDR_ESCAPE
Possible misuse of sizeofSIZEOF_MISUSE
Possibly unintended evaluation of expression because of operator precedence rulesOPERATOR_PRECEDENCE
Predefined macro used as an objectMACRO_USED_AS_OBJECT
Preprocessor directive in macro argumentPRE_DIRECTIVE_MACRO_ARG
Resource leakRESOURCE_LEAK
Return from computational exception signal handlerSIG_HANDLER_COMP_EXCP_RETURN
Self assignment not tested in operatorMISSING_SELF_ASSIGN_TEST
Shared data access within signal handlerSIG_HANDLER_SHARED_OBJECT
Side effect of expression ignoredSIDE_EFFECT_IGNORED
Sign change integer conversion overflowSIGN_CHANGE
Signal call from within signal handlerSIG_HANDLER_CALLING_SIGNAL
Standard function call with incorrect argumentsSTD_FUNC_ARG_MISMATCH
Stream argument with possibly unintended side effectsSTREAM_WITH_SIDE_EFFECT
Subtraction or comparison between pointers to different arraysPTR_TO_DIFF_ARRAY
Throw argument raises unexpected exceptionTHROW_ARGUMENT_EXPRESSION_THROWS
Too many va_arg calls for current argument listTOO_MANY_VA_ARG_CALLS
Typedef mismatchTYPEDEF_MISMATCH
Universal character name from token concatenationPRE_UCNAME_JOIN_TOKENS
Unnamed namespace in header fileUNNAMED_NAMESPACE_IN_HEADER
Unreachable codeUNREACHABLE
Unreliable cast of function pointerFUNC_CAST
Unreliable cast of pointerPTR_CAST
Unsigned integer conversion overflowUINT_CONV_OVFL
Use of automatic variable as putenv-family function argumentPUTENV_AUTO_VAR
Use of previously closed resourceCLOSED_RESOURCE_USE
Use of previously freed pointerFREED_PTR
Useless ifUSELESS_IF
Variable length array with nonpositive sizeNON_POSITIVE_VLA_SIZE
Variable shadowingVAR_SHADOWING
Write without a further readUSELESS_WRITE
Writing to const qualified objectCONSTANT_OBJECT_WRITE
Writing to read-only resourceREAD_ONLY_RESOURCE_WRITE
Wrong type used in sizeofPTR_SIZEOF_MISMATCH

To enable other checkers and coding rule, configure checkers selections. See Prepare Checkers Configuration for Polyspace Bug Finder Analysis or Setting Checkers in Polyspace as You Code.

Related Topics