2026-05-31 21:27 ftp://ftp.de.debian.org/debian/pool/main/b/bcpp/bcpp_0.0.20210108.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.12.88+deb13-amd64-x86_64-with-glibc2.41 python: 3.12.13 client-version: 1.4.0 compiler: g++ (Debian 14.2.0-19) 14.2.0 cppcheck: head 2.20.0 head-info: 8c14fc7 (2026-05-31 09:56:45 +0200) count: 96 97 elapsed-time: 1.1 1.1 head-timing-info: old-timing-info: head results: bcpp-20210108/code/backup.cpp:98:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] bcpp-20210108/code/baseq.h:46:9: style: Class 'QueueList' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] bcpp-20210108/code/stacklis.h:41:9: style: Class 'StackList' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] bcpp-20210108/code/bcpp.h:194:16: style: Class 'OutputStruct' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] bcpp-20210108/code/bcpp.h:200:16: style: Class 'OutputStruct' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] bcpp-20210108/code/bcpp.h:207:16: style: Class 'OutputStruct' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] bcpp-20210108/code/stacklis.h:109:10: style: The destructor '~StackList' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] bcpp-20210108/code/anyobj.h:18:16: note: Virtual destructor in base class bcpp-20210108/code/stacklis.h:109:10: note: Destructor in derived class bcpp-20210108/code/bcpp.h:220:17: style: The destructor '~OutputStruct' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] bcpp-20210108/code/anyobj.h:18:16: note: Virtual destructor in base class bcpp-20210108/code/bcpp.h:220:17: note: Destructor in derived class bcpp-20210108/code/backup.cpp:112:22: style: Condition 'oldCh!=EOF' is always true [knownConditionTrueFalse] bcpp-20210108/code/backup.cpp:60:17: style: The scope of the variable 'suffix' can be reduced. [variableScope] bcpp-20210108/code/backup.cpp:41:31: style: Parameter 'name' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.h:200:43: style: Parameter 'theIn' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.h:207:44: style: Parameter 'theIn' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/baseq.cpp:32:22: style: The member function 'QueueList::newItem' can be static. [functionStatic] bcpp-20210108/code/baseq.h:37:19: note: The member function 'QueueList::newItem' can be static. bcpp-20210108/code/baseq.cpp:32:22: note: The member function 'QueueList::newItem' can be static. bcpp-20210108/code/baseq.cpp:144:16: style:inconclusive: Technically the member function 'QueueList::status' can be const. [functionConst] bcpp-20210108/code/baseq.h:81:18: note: Technically the member function 'QueueList::status' can be const. bcpp-20210108/code/baseq.cpp:144:16: note: Technically the member function 'QueueList::status' can be const. bcpp-20210108/code/baseq.cpp:158:16: style:inconclusive: Technically the member function 'QueueList::space' can be const. [functionConst] bcpp-20210108/code/baseq.h:92:18: note: Technically the member function 'QueueList::space' can be const. bcpp-20210108/code/baseq.cpp:158:16: note: Technically the member function 'QueueList::space' can be const. bcpp-20210108/code/baseq.cpp:182:19: style: Variable 'pStartPos' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:3580:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] bcpp-20210108/code/bcpp.cpp:3759:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] bcpp-20210108/code/bcpp.cpp:920:62: style: Condition 'OBrace2>=0' is always true [knownConditionTrueFalse] bcpp-20210108/code/bcpp.cpp:920:23: note: Assuming that condition 'OBrace2<0' is not redundant bcpp-20210108/code/bcpp.cpp:920:62: note: Condition 'OBrace2>=0' is always true bcpp-20210108/code/bcpp.cpp:1832:70: style: Condition 'pAlterLine->pCode==NULL' is always true [knownConditionTrueFalse] bcpp-20210108/code/bcpp.cpp:1831:32: note: Assuming that condition 'pAlterLine->pCode!=NULL' is not redundant bcpp-20210108/code/bcpp.cpp:1832:70: note: Condition 'pAlterLine->pCode==NULL' is always true bcpp-20210108/code/bcpp.cpp:269:12: style: The scope of the variable 'n' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:747:17: style: The scope of the variable 'commentLen' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:1736:9: style: The scope of the variable 'state' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:2183:27: style: The scope of the variable 'pThrowOut' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:3007:18: style: The scope of the variable 'pNextItem' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:3124:17: style: The scope of the variable 'mark' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:3611:11: style: The scope of the variable 'backUp' can be reduced. [variableScope] bcpp-20210108/code/bcpp.cpp:1252:66: performance: Function parameter 'userS' should be passed by const reference. [passedByValue] bcpp-20210108/code/bcpp.cpp:210:36: style: Parameter 'pLineData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:210:53: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:220:34: style: Parameter 'pLineData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:220:51: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:242:41: style: Parameter 'pLineData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:258:15: style: Variable 't' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:280:42: style: Parameter 'pItem' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:297:42: style: Parameter 'pItem' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:373:36: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:399:55: style: Parameter 'pData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:399:68: style: Parameter 'pState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:421:47: style: Parameter 'pData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:421:60: style: Parameter 'pState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:470:47: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:478:46: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:511:37: style: Parameter 'pLineData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:512:37: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:639:37: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:654:35: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:671:34: style: Parameter 'pLineData' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:671:51: style: Parameter 'pLineState' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:1138:42: style: Parameter 'pIn' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:1155:31: style: Variable 'pTemp' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:1216:36: style: Parameter 'pItem' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:1261:35: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:1278:41: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:1314:41: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:1696:19: style: Variable 'pTemp' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:1716:23: style: Variable 'pIndentItem' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:1795:53: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:2048:23: style: Variable 'pBraceOnNewLn' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:2049:23: style: Variable 'pBraceOnCurLn' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:2954:23: style: Variable 'pTestLine' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:2991:45: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/bcpp.cpp:3037:54: style: Parameter 'notes' can be declared as pointer to const [constParameterReference] bcpp-20210108/code/bcpp.cpp:3569:11: style: Variable 'pSHome' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/bcpp.cpp:517:21: style: Variable 'pNewState' is assigned a value that is never used. [unreadVariable] bcpp-20210108/code/bcpp.cpp:518:24: style: Variable 'pItem' is assigned a value that is never used. [unreadVariable] bcpp-20210108/code/cmdline.cpp:151:11: style: The scope of the variable 'cmdRead' can be reduced. [variableScope] bcpp-20210108/code/config.cpp:303:5: warning: Assignment of function parameter has no effect outside the function. Did you forget dereferencing it? [uselessAssignmentPtrArg] bcpp-20210108/code/config.cpp:169:21: warning: Either the condition 'pLineOfConfig!=0' is redundant or there is possible null pointer dereference: string. [nullPointerRedundantCheck] bcpp-20210108/code/config.cpp:369:27: note: Assuming that condition 'pLineOfConfig!=0' is not redundant bcpp-20210108/code/config.cpp:373:39: note: Calling function 'FindConfigWords', 1st argument 'pLineOfConfig' value is 0 bcpp-20210108/code/config.cpp:240:41: note: Calling function 'parseKeyword', 1st argument 'pConfigLine' value is 0 bcpp-20210108/code/config.cpp:191:16: note: Calling function 'skipBlanks', 1st argument 'from' value is 0 bcpp-20210108/code/config.cpp:169:21: note: Null pointer dereference bcpp-20210108/code/config.cpp:65:9: style: The scope of the variable 'ch' can be reduced. [variableScope] bcpp-20210108/code/config.cpp:355:15: style: The scope of the variable 'type' can be reduced. [variableScope] bcpp-20210108/code/config.cpp:285:36: style: Parameter 'errorCount' can be declared as reference to const [constParameterReference] bcpp-20210108/code/config.cpp:298:36: style: Parameter 'errorCount' can be declared as reference to const [constParameterReference] bcpp-20210108/code/config.cpp:490:25: style: Parameter 'userSettings' can be declared as reference to const [constParameterReference] bcpp-20210108/code/debug.cpp:32:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] bcpp-20210108/code/execsql.cpp:80:12: style: The member function 'SqlStruct::SkipWord' can be static. [functionStatic] bcpp-20210108/code/bcpp.h:317:13: note: The member function 'SqlStruct::SkipWord' can be static. bcpp-20210108/code/execsql.cpp:80:12: note: The member function 'SqlStruct::SkipWord' can be static. bcpp-20210108/code/execsql.cpp:94:12: style: The member function 'SqlStruct::SqlVerb' can be static. [functionStatic] bcpp-20210108/code/bcpp.h:318:14: note: The member function 'SqlStruct::SqlVerb' can be static. bcpp-20210108/code/execsql.cpp:94:12: note: The member function 'SqlStruct::SqlVerb' can be static. bcpp-20210108/code/execsql.cpp:54:32: style: Condition 'pOut->pCFlag[n]==DQuoted' is always false [knownConditionTrueFalse] bcpp-20210108/code/execsql.cpp:54:11: style: Same expression on both sides of '||'. [duplicateExpression] bcpp-20210108/code/execsql.cpp:80:46: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/hanging.cpp:45:39: warning: The address of variable 'string' might be accessed at non-zero index. [objectIndex] bcpp-20210108/code/hanging.cpp:45:13: note: Passed to 'strncpy'. bcpp-20210108/code/hanging.cpp:45:39: note: The address of variable 'string' might be accessed at non-zero index. bcpp-20210108/code/stacklis.cpp:156:17: style:inconclusive: Technically the member function 'StackList::status' can be const. [functionConst] bcpp-20210108/code/stacklis.h:92:20: note: Technically the member function 'StackList::status' can be const. bcpp-20210108/code/stacklis.cpp:156:17: note: Technically the member function 'StackList::status' can be const. bcpp-20210108/code/stacklis.cpp:145:17: style:inconclusive: Technically the member function 'StackList::space' can be const. [functionConst] bcpp-20210108/code/stacklis.h:103:20: note: Technically the member function 'StackList::space' can be const. bcpp-20210108/code/stacklis.cpp:145:17: note: Technically the member function 'StackList::space' can be const. bcpp-20210108/code/stacklis.cpp:121:17: style: Variable 'pPeekPos' can be declared as pointer to const [constVariablePointer] bcpp-20210108/code/tabs.cpp:298:32: style: Condition 'pNewStates==NULL' is always false [knownConditionTrueFalse] bcpp-20210108/code/tabs.cpp:344:63: warning: Either the condition 'pOctal==0' is redundant or there is possible null pointer dereference: pOctal. [nullPointerRedundantCheck] bcpp-20210108/code/tabs.cpp:345:28: note: Assuming that condition 'pOctal==0' is not redundant bcpp-20210108/code/tabs.cpp:344:63: note: Null pointer dereference bcpp-20210108/code/tabs.cpp:298:18: style: Same expression on both sides of '||' because 'pNewString==NULL' and 'pNewStates==NULL' represent the same value. [knownConditionTrueFalse] bcpp-20210108/code/tabs.cpp:294:36: note: 'pNewString' is assigned value 'new char[strlen(pString)+tabAmount+1]' here. bcpp-20210108/code/tabs.cpp:295:36: note: 'pNewStates' is assigned value 'new char[strlen(pString)+tabAmount+1]' here. bcpp-20210108/code/tabs.cpp:298:18: note: Same expression on both sides of '||' because 'pNewString==NULL' and 'pNewStates==NULL' represent the same value. bcpp-20210108/code/tabs.cpp:74:29: style: Parameter 'String' can be declared as pointer to const [constParameterPointer] bcpp-20210108/code/tabs.cpp:348:30: error: Memory is allocated but not initialized: pTemp [uninitdata] bcpp-20210108/code/verbose.cpp:51:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] bcpp-20210108/code/verbose.cpp:59:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] bcpp-20210108/code/verbose.cpp:39:18: style: Condition 'my_level>0' is always true [knownConditionTrueFalse] bcpp-20210108/code/verbose.cpp:57:9: style: The scope of the variable 'code' can be reduced. [variableScope] bcpp-20210108/code/cmdline.cpp:21:14: warning: Null pointer dereference: pUpCase [ctunullpointer] bcpp-20210108/code/config.cpp:369:27: note: Assuming that condition 'pLineOfConfig!=0' is not redundant bcpp-20210108/code/config.cpp:368:16: note: Calling function StrUpr, 1st argument is null bcpp-20210108/code/cmdline.cpp:21:14: note: Dereferencing argument pUpCase that is null bcpp-20210108/code/config.cpp:169:21: warning: Null pointer dereference: string [ctunullpointer] bcpp-20210108/code/config.cpp:369:27: note: Assuming that condition 'pLineOfConfig!=0' is not redundant bcpp-20210108/code/config.cpp:373:39: note: Calling function 'FindConfigWords', 1st argument 'pLineOfConfig' value is 0 bcpp-20210108/code/config.cpp:240:40: note: Calling function parseKeyword, 1st argument is null bcpp-20210108/code/config.cpp:191:5: note: Calling function skipBlanks, 1st argument is null bcpp-20210108/code/config.cpp:169:21: note: Dereferencing argument string that is null diff: head bcpp-20210108/code/bcpp.cpp:1261:35: style: Parameter 'pOut' can be declared as pointer to const [constParameterPointer] 2.20.0 bcpp-20210108/code/bcpp.cpp:712:9: style: Variable 's' is assigned an expression that holds the same value. [redundantAssignment] bcpp-20210108/code/bcpp.cpp:706:17: note: s is assigned 'new char[len+4]' here. bcpp-20210108/code/bcpp.cpp:712:9: note: Variable 's' is assigned an expression that holds the same value. 2.20.0 bcpp-20210108/code/tabs.cpp:361:27: style: Condition 'pTemp==0' is always false [knownConditionTrueFalse] DONE