2025-11-24 17:25 ftp://ftp.de.debian.org/debian/pool/main/w/wiggle/wiggle_1.3.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 -j4 platform: Linux-5.4.0-216-generic-x86_64-with-glibc2.29 python: 3.8.10 client-version: 1.3.69 compiler: g++ (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0 cppcheck: head 2.18.0 head-info: cb76e52 (2025-11-22 14:47:37 +0100) count: 97 98 elapsed-time: 1.3 2.8 head-timing-info: old-timing-info: head results: wiggle-1.3/ccan/build_assert/test/compile_fail-expr.c:3:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/wiggle.h:31:26: error: Syntax Error: AST broken, 'assert' doesn't have two operands. [internalAstError] wiggle-1.3/ccan/build_assert/test/compile_fail.c:3:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/ccan/build_assert/test/compile_ok.c:5:17: style: Same expression on both sides of '=='. [duplicateExpression] wiggle-1.3/ccan/build_assert/test/run-BUILD_ASSERT_OR_ZERO.c:7:29: style: Same expression on both sides of '=='. [duplicateExpression] wiggle-1.3/ccan/build_assert/test/compile_ok.c:3:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/ccan/build_assert/test/run-BUILD_ASSERT_OR_ZERO.c:4:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/ccan/hash/hash.c:78:0: error: #error Unknown endian [preprocessorErrorDirective] wiggle-1.3/demo.orig/vpatch.c:63:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:100:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:147:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:366:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ByWord [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:540:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable A_BOLD [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:626:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/wiggle.c:90:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/wiggle.c:126:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable len [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/wiggle.c:157:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:64:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:101:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/wiggle.c:90:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:148:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/wiggle.c:126:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable len [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:367:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ByWord [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/wiggle.c:157:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:541:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable A_BOLD [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:627:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/wiggle.c:581:8: error: Return value of allocation function 'open' is not stored. [leakReturnValNotUsed] wiggle-1.3/demo.orig/wiggle.c:92:2: style: Statements following noreturn function 'abort()' will never be executed. [unreachableCode] wiggle-1.3/demo.orig/wiggle.c:405:17: style: Local variable 'i' shadows outer variable [shadowVariable] wiggle-1.3/demo.orig/wiggle.c:154:6: note: Shadowed declaration wiggle-1.3/demo.orig/wiggle.c:405:17: note: Shadow variable wiggle-1.3/demo.orig/wiggle.c:158:8: style: Variable 'helpmsg' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.orig/wiggle.c:280:12: style: Variable 'chunks1' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.orig/wiggle.c:280:22: style: Variable 'chunks2' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.orig/wiggle.c:332:24: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.orig/wiggle.c:334:24: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.orig/wiggle.c:555:22: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.patched/wiggle.c:581:8: error: Return value of allocation function 'open' is not stored. [leakReturnValNotUsed] wiggle-1.3/demo.patched/wiggle.c:92:2: style: Statements following noreturn function 'abort()' will never be executed. [unreachableCode] wiggle-1.3/demo.patched/wiggle.c:405:17: style: Local variable 'i' shadows outer variable [shadowVariable] wiggle-1.3/demo.patched/wiggle.c:154:6: note: Shadowed declaration wiggle-1.3/demo.patched/wiggle.c:405:17: note: Shadow variable wiggle-1.3/demo.patched/wiggle.c:158:8: style: Variable 'helpmsg' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.patched/wiggle.c:280:12: style: Variable 'chunks1' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.patched/wiggle.c:280:22: style: Variable 'chunks2' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.patched/wiggle.c:332:24: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.patched/wiggle.c:334:24: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo.patched/wiggle.c:555:22: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/md.c:1552:3: error: There is an unknown macro here somewhere. Configuration is required. If ITERATE_RDEV is a macro then please configure it. [unknownMacro] wiggle-1.3/demo.orig/vpatch.c:89:15: warning: If resource allocation fails, then there is a possible null pointer dereference: f [nullPointerOutOfResources] wiggle-1.3/demo.orig/vpatch.c:632:13: note: Assuming allocation function fails wiggle-1.3/demo.orig/vpatch.c:632:13: note: Assignment 'in=fopen(argv[1],"r")', assigned value is 0 wiggle-1.3/demo.orig/vpatch.c:638:19: note: Calling function 'parse_patch', 1st argument 'in' value is 0 wiggle-1.3/demo.orig/vpatch.c:89:15: note: Null pointer dereference wiggle-1.3/demo.orig/vpatch.c:149:2: style: Statements following noreturn function 'abort()' will never be executed. [unreachableCode] wiggle-1.3/demo.orig/vpatch.c:235:24: warning:inconclusive: Found suspicious operator '*', result is not used. [constStatement] wiggle-1.3/demo.orig/vpatch.c:196:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.orig/vpatch.c:219:8: style: Variable 'buf' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:65:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:221:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:102:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:347:32: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] wiggle-1.3/demo/vpatch.c:149:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:355:14: style: Variable 'csl' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:368:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ByWord [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:622:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/demo/vpatch.c:542:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable A_BOLD [valueFlowBailoutIncompleteVar] wiggle-1.3/demo/vpatch.c:628:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.orig/vpatch.c:235:29: warning: In expression like '*A++' the result of '*' is unused. Did you intend to write '(*A)++;'? [clarifyStatement] wiggle-1.3/demo.orig/vpatch.c:262:10: style: Variable 'curr[0]' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/wiggle.c:90:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] wiggle-1.3/demo/wiggle.c:126:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable len [valueFlowBailoutIncompleteVar] wiggle-1.3/demo/wiggle.c:157:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] wiggle-1.3/demo.patched/vpatch.c:90:15: warning: If resource allocation fails, then there is a possible null pointer dereference: f [nullPointerOutOfResources] wiggle-1.3/demo.patched/vpatch.c:633:13: note: Assuming allocation function fails wiggle-1.3/demo.patched/vpatch.c:633:13: note: Assignment 'in=fopen(argv[1],"r")', assigned value is 0 wiggle-1.3/demo.patched/vpatch.c:639:19: note: Calling function 'parse_patch', 1st argument 'in' value is 0 wiggle-1.3/demo.patched/vpatch.c:90:15: note: Null pointer dereference wiggle-1.3/patch_depends.c:87:42: error: Unmatched '{'. Configuration: '__GNUC__=1'. [syntaxError] wiggle-1.3/demo.patched/vpatch.c:150:2: style: Statements following noreturn function 'abort()' will never be executed. [unreachableCode] wiggle-1.3/demo.patched/vpatch.c:236:24: warning:inconclusive: Found suspicious operator '*', result is not used. [constStatement] wiggle-1.3/demo.patched/vpatch.c:197:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.patched/vpatch.c:220:8: style: Variable 'buf' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.patched/vpatch.c:222:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.patched/vpatch.c:348:32: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] wiggle-1.3/demo.patched/vpatch.c:356:14: style: Variable 'csl' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo.patched/vpatch.c:623:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/demo.patched/vpatch.c:236:29: warning: In expression like '*A++' the result of '*' is unused. Did you intend to write '(*A)++;'? [clarifyStatement] wiggle-1.3/demo.patched/vpatch.c:263:10: style: Variable 'curr[0]' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/wiggle.c:581:8: error: Return value of allocation function 'open' is not stored. [leakReturnValNotUsed] wiggle-1.3/demo/wiggle.c:92:2: style: Statements following noreturn function 'abort()' will never be executed. [unreachableCode] wiggle-1.3/demo/wiggle.c:405:17: style: Local variable 'i' shadows outer variable [shadowVariable] wiggle-1.3/demo/wiggle.c:154:6: note: Shadowed declaration wiggle-1.3/demo/wiggle.c:405:17: note: Shadow variable wiggle-1.3/demo/wiggle.c:158:8: style: Variable 'helpmsg' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/wiggle.c:280:12: style: Variable 'chunks1' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/wiggle.c:280:22: style: Variable 'chunks2' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/wiggle.c:332:24: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/wiggle.c:334:24: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/wiggle.c:555:22: style: Variable 'chunks3' is assigned a value that is never used. [unreadVariable] wiggle-1.3/demo/vpatch.c:91:15: warning: If resource allocation fails, then there is a possible null pointer dereference: f [nullPointerOutOfResources] wiggle-1.3/demo/vpatch.c:634:13: note: Assuming allocation function fails wiggle-1.3/demo/vpatch.c:634:13: note: Assignment 'in=fopen(argv[1],"r")', assigned value is 0 wiggle-1.3/demo/vpatch.c:640:19: note: Calling function 'parse_patch', 1st argument 'in' value is 0 wiggle-1.3/demo/vpatch.c:91:15: note: Null pointer dereference wiggle-1.3/demo/vpatch.c:151:2: style: Statements following noreturn function 'abort()' will never be executed. [unreachableCode] wiggle-1.3/demo/vpatch.c:237:24: warning:inconclusive: Found suspicious operator '*', result is not used. [constStatement] wiggle-1.3/demo/vpatch.c:198:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:221:8: style: Variable 'buf' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:223:9: style: Variable 'c' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:349:32: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] wiggle-1.3/demo/vpatch.c:357:14: style: Variable 'csl' can be declared as pointer to const [constVariablePointer] wiggle-1.3/demo/vpatch.c:624:26: style: Parameter 'argv' can be declared as const array [constParameter] wiggle-1.3/demo/vpatch.c:237:29: warning: In expression like '*A++' the result of '*' is unused. Did you intend to write '(*A)++;'? [clarifyStatement] wiggle-1.3/demo/vpatch.c:264:10: style: Variable 'curr[0]' is assigned a value that is never used. [unreadVariable] diff: 2.18.0 wiggle-1.3/ccan/hash/hash.c:78:2: error: #error Unknown endian [preprocessorErrorDirective] DONE