2025-07-01 13:30 ftp://ftp.de.debian.org/debian/pool/main/w/wikidiff2/wikidiff2_1.14.1.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 -j6 platform: Linux-6.1.0-37-amd64-x86_64-with-glibc2.36 python: 3.11.2 client-version: 1.3.67 compiler: g++ (Debian 12.2.0-14+deb12u1) 12.2.0 cppcheck: head 2.17.0 head-info: f4eb733 (2025-07-01 13:53:18 +0200) count: 48 47 elapsed-time: 1.0 1.0 head-timing-info: old-timing-info: head results: wikidiff2-1.14.1/src/lib/TextUtil.cpp:102:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable THCHAR_ERR [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/DiffEngine.h:244:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable change [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/InlineJSONFormatter.cpp:226:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable hex [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/DiffEngine.h:157:3: warning: Member variable 'DiffEngine < Word >::lcs' is not initialized in the constructor. [uninitMemberVar] wikidiff2-1.14.1/src/lib/DiffEngine.h:157:3: style: Class 'DiffEngine < Word >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] wikidiff2-1.14.1/src/lib/DiffEngine.h:562:4: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] wikidiff2-1.14.1/src/lib/DiffEngine.h:582:6: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] wikidiff2-1.14.1/src/lib/DiffEngine.h:622:5: style: 'continue' is redundant since it is the last statement in a loop. [redundantContinue] wikidiff2-1.14.1/src/lib/DiffEngine.h:370:20: style: The scope of the variable 'y1' can be reduced. [variableScope] wikidiff2-1.14.1/src/lib/DiffEngine.h:470:6: style: Local variable 'lcs' shadows outer variable [shadowVariable] wikidiff2-1.14.1/src/lib/DiffEngine.h:178:7: note: Shadowed declaration wikidiff2-1.14.1/src/lib/DiffEngine.h:470:6: note: Shadow variable wikidiff2-1.14.1/src/lib/TableFormatter.cpp:33:53: style:inconclusive: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/TableFormatter.h:16:21: note: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. wikidiff2-1.14.1/src/lib/TableFormatter.cpp:33:53: note: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. wikidiff2-1.14.1/src/lib/TextUtil.h:31:14: performance:inconclusive: Technically the member function 'wikidiff2::TextUtil::isLetter' can be static (but you may consider moving to unnamed namespace). [functionStatic] wikidiff2-1.14.1/src/lib/TextUtil.h:50:14: performance:inconclusive: Technically the member function 'wikidiff2::TextUtil::isSpace' can be static (but you may consider moving to unnamed namespace). [functionStatic] wikidiff2-1.14.1/src/lib/TextUtil.cpp:29:15: performance:inconclusive: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). [functionStatic] wikidiff2-1.14.1/src/lib/TextUtil.h:55:6: note: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). wikidiff2-1.14.1/src/lib/TextUtil.cpp:29:15: note: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). wikidiff2-1.14.1/src/lib/TextUtil.cpp:129:39: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] wikidiff2-1.14.1/src/lib/InlineFormatter.cpp:30:54: style:inconclusive: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/InlineFormatter.h:16:21: note: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. wikidiff2-1.14.1/src/lib/InlineFormatter.cpp:30:54: note: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. wikidiff2-1.14.1/src/lib/TextUtil.cpp:33:16: style: The scope of the variable 'byte' can be reduced. [variableScope] wikidiff2-1.14.1/src/lib/TextUtil.cpp:86:25: style: Unused variable: suffixEnd [unusedVariable] wikidiff2-1.14.1/src/lib/TextUtil.cpp:152:3: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] wikidiff2-1.14.1/src/lib/TextUtil.cpp:166:4: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] wikidiff2-1.14.1/src/lib/InlineJSONFormatter.cpp:56:58: style:inconclusive: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/InlineJSONFormatter.h:31:20: note: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. wikidiff2-1.14.1/src/lib/InlineJSONFormatter.cpp:56:58: note: Function 'printWordDiff' argument 1 names different: declaration 'wordDiff' definition 'worddiff'. wikidiff2-1.14.1/src/php_wikidiff2.cpp:35:0: error: #error "PHP version 7 or later is required." [preprocessorErrorDirective] wikidiff2-1.14.1/src/php_wikidiff2.cpp:35:6: error: #error "PHP version 7 or later is required." [preprocessorErrorDirective] wikidiff2-1.14.1/src/lib/WordDiffStats.cpp:20:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable op [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:168:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/WordDiffCache.h:25:3: warning: Member variable 'WordDiffCache::linesVecPtrs' is not initialized in the constructor. [uninitMemberVar] wikidiff2-1.14.1/src/lib/DiffEngine.h:157:3: warning: Member variable 'DiffEngine < std :: basic_string < char , std :: char_traits < char > , std :: allocator < char > > >::lcs' is not initialized in the constructor. [uninitMemberVar] wikidiff2-1.14.1/src/lib/LineDiffProcessor.h:74:19: style:inconclusive: Member variable 'LineDiffProcessor::wordDiffCache' is in the wrong place in the initializer list. [initializerList] wikidiff2-1.14.1/src/lib/LineDiffProcessor.h:53:23: note: Member variable 'LineDiffProcessor::wordDiffCache' is in the wrong place in the initializer list. wikidiff2-1.14.1/src/lib/LineDiffProcessor.h:74:19: note: Member variable 'LineDiffProcessor::wordDiffCache' is in the wrong place in the initializer list. wikidiff2-1.14.1/src/lib/WordDiffStats.h:16:2: style: Struct 'WordDiffStats' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] wikidiff2-1.14.1/src/lib/WordDiffCache.h:25:3: style: Class 'WordDiffCache' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] wikidiff2-1.14.1/src/lib/DiffEngine.h:157:3: style: Class 'DiffEngine < std :: basic_string < char , std :: char_traits < char > , std :: allocator < char > > >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] wikidiff2-1.14.1/src/lib/LineDiffProcessor.cpp:43:45: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] wikidiff2-1.14.1/src/lib/Wikidiff2.h:178:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable op [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:44:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable op [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:354:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable op [valueFlowBailoutIncompleteVar] wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:164:21: style:inconclusive: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. [functionConst] wikidiff2-1.14.1/src/lib/WordDiffCache.h:80:8: note: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:164:21: note: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:53:23: style:inconclusive: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. [functionConst] wikidiff2-1.14.1/src/lib/WordDiffCache.h:157:10: note: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:53:23: note: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:16:17: style:inconclusive: Function 'getConcatDiff' argument 1 names different: declaration 'from' definition 'fromStart'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/WordDiffCache.h:40:44: note: Function 'getConcatDiff' argument 1 names different: declaration 'from' definition 'fromStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:16:17: note: Function 'getConcatDiff' argument 1 names different: declaration 'from' definition 'fromStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:17:17: style:inconclusive: Function 'getConcatDiff' argument 3 names different: declaration 'to' definition 'toStart'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/WordDiffCache.h:41:19: note: Function 'getConcatDiff' argument 3 names different: declaration 'to' definition 'toStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:17:17: note: Function 'getConcatDiff' argument 3 names different: declaration 'to' definition 'toStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:73:17: style:inconclusive: Function 'getConcatDiffStats' argument 1 names different: declaration 'from' definition 'fromStart'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/WordDiffCache.h:66:59: note: Function 'getConcatDiffStats' argument 1 names different: declaration 'from' definition 'fromStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:73:17: note: Function 'getConcatDiffStats' argument 1 names different: declaration 'from' definition 'fromStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:74:17: style:inconclusive: Function 'getConcatDiffStats' argument 3 names different: declaration 'to' definition 'toStart'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/WordDiffCache.h:67:19: note: Function 'getConcatDiffStats' argument 3 names different: declaration 'to' definition 'toStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:74:17: note: Function 'getConcatDiffStats' argument 3 names different: declaration 'to' definition 'toStart'. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:155:13: style: Local variable 'it' shadows outer variable [shadowVariable] wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:136:7: note: Shadowed declaration wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:155:13: note: Shadow variable wikidiff2-1.14.1/src/lib/WordDiffSegmenter.cpp:20:58: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] wikidiff2-1.14.1/src/lib/WordDiffSegmenter.cpp:55:58: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] wikidiff2-1.14.1/src/lib/Wikidiff2.h:85:3: style: Class 'Wikidiff2' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:180:19: style:inconclusive: Function 'printWordDiff' argument 1 names different: declaration 'diff' definition 'wordDiff'. [funcArgNamesDifferent] wikidiff2-1.14.1/src/lib/Wikidiff2.h:136:21: note: Function 'printWordDiff' argument 1 names different: declaration 'diff' definition 'wordDiff'. wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:180:19: note: Function 'printWordDiff' argument 1 names different: declaration 'diff' definition 'wordDiff'. wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:446:10: style: Local variable 'it' shadows outer variable [shadowVariable] wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:400:7: note: Shadowed declaration wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:446:10: note: Shadow variable wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:449:11: style: Local variable 'found' shadows outer variable [shadowVariable] wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:441:32: note: Shadowed declaration wikidiff2-1.14.1/src/lib/Wikidiff2.cpp:449:11: note: Shadow variable diff: head wikidiff2-1.14.1/src/lib/TextUtil.cpp:129:39: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] 2.17.0 wikidiff2-1.14.1/src/lib/TextUtil.cpp:129:40: style: C-style pointer casting [cstyleCast] head wikidiff2-1.14.1/src/lib/TextUtil.cpp:29:15: performance:inconclusive: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). [functionStatic] wikidiff2-1.14.1/src/lib/TextUtil.h:55:6: note: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). wikidiff2-1.14.1/src/lib/TextUtil.cpp:29:15: note: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). 2.17.0 wikidiff2-1.14.1/src/lib/TextUtil.h:55:6: performance:inconclusive: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). [functionStatic] wikidiff2-1.14.1/src/lib/TextUtil.cpp:29:15: note: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). wikidiff2-1.14.1/src/lib/TextUtil.h:55:6: note: Technically the member function 'wikidiff2::TextUtil::nextUtf8Char' can be static (but you may consider moving to unnamed namespace). head wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:164:21: style:inconclusive: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. [functionConst] wikidiff2-1.14.1/src/lib/WordDiffCache.h:80:8: note: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:164:21: note: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. head wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:53:23: style:inconclusive: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. [functionConst] wikidiff2-1.14.1/src/lib/WordDiffCache.h:157:10: note: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:53:23: note: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. 2.17.0 wikidiff2-1.14.1/src/lib/WordDiffCache.h:157:10: style:inconclusive: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. [functionConst] wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:53:23: note: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.h:157:10: note: Technically the member function 'wikidiff2::WordDiffCache::getKey' can be const. 2.17.0 wikidiff2-1.14.1/src/lib/WordDiffCache.h:80:8: style:inconclusive: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. [functionConst] wikidiff2-1.14.1/src/lib/WordDiffCache.cpp:164:21: note: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. wikidiff2-1.14.1/src/lib/WordDiffCache.h:80:8: note: Technically the member function 'wikidiff2::WordDiffCache::dumpDebugReport' can be const. head wikidiff2-1.14.1/src/php_wikidiff2.cpp:35:6: error: #error "PHP version 7 or later is required." [preprocessorErrorDirective] DONE