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

Go to top of page