2025-08-30 07:39 ftp://ftp.de.debian.org/debian/pool/main/d/digimend-dkms/digimend-dkms_13.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.8.0-79-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0 cppcheck: head 2.18.0 head-info: 478055e (2025-08-29 18:53:24 +0200) count: 16 48 elapsed-time: 0.2 0.7 head-timing-info: old-timing-info: head results: digimend-kernel-drivers-13/hid-kye.c:676:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HID_FEATURE_REPORT [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-kye.c:716:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HID_QUIRK_MULTI_INPUT [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-kye.c:562:17: style: Parameter 'rsize' can be declared as pointer to const [constParameterPointer] digimend-kernel-drivers-13/hid-polostar.c:179:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENODEV [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-uclogic-core-test.c:72:62: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GFP_KERNEL [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-uclogic-core-test.c:59:43: style: Parameter 'work' can be declared as pointer to const. However it seems that 'fake_work' is a callback function, if 'work' is declared with const you might also need to cast function pointer(s). [constParameterCallback] digimend-kernel-drivers-13/hid-uclogic-core-test.c:85:28: note: You might need to cast the function pointer here digimend-kernel-drivers-13/hid-uclogic-core-test.c:59:43: note: Parameter 'work' can be declared as pointer to const digimend-kernel-drivers-13/hid-uclogic-core.c:86:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] digimend-kernel-drivers-13/hid-uclogic-core.c:86:2: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] digimend-kernel-drivers-13/hid-uclogic-params-test.c:133:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KUNIT_PARAM_DESC_SIZE [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-uclogic-params-test.c:188:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable hid_device [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-uclogic-params.c:1577:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] digimend-kernel-drivers-13/hid-uclogic-params.c:1577:2: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] digimend-kernel-drivers-13/hid-uclogic-rdesc-test.c:184:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KUNIT_PARAM_DESC_SIZE [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-uclogic-rdesc.c:1230:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GFP_KERNEL [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-viewsonic.c:101:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HID_CONNECT_DEFAULT [valueFlowBailoutIncompleteVar] digimend-kernel-drivers-13/hid-viewsonic.c:74:56: style: Parameter 'hdev' can be declared as pointer to const. However it seems that 'viewsonic_report_fixup' is a callback function, if 'hdev' is declared with const you might also need to cast function pointer(s). [constParameterCallback] digimend-kernel-drivers-13/hid-viewsonic.c:123:18: note: You might need to cast the function pointer here digimend-kernel-drivers-13/hid-viewsonic.c:74:56: note: Parameter 'hdev' can be declared as pointer to const diff: 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:127:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EV_MSC [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:177:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HID_QUIRK_MULTI_INPUT [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:268:67: style: Parameter 'event' can be declared as pointer to const [constParameterPointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:275:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable list [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:276:13: error: Uninitialized variable: curr->size [uninitvar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:298:29: style: Variable 'pen' can be declared as pointer to const [constVariablePointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:340:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable jiffies [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:38:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable inrange_timer [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:429:24: style: Parameter 'report' can be declared as pointer to const. However it seems that 'uclogic_raw_event' is a callback function, if 'report' is declared with const you might also need to cast function pointer(s). [constParameterCallback] digimend-kernel-drivers-13/hid-uclogic-core.c:578:15: note: You might need to cast the function pointer here digimend-kernel-drivers-13/hid-uclogic-core.c:429:24: note: Parameter 'report' can be declared as pointer to const 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:436:39: style: Variable 'subreport_list_end' can be declared as pointer to const [constVariablePointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:440:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HID_INPUT_REPORT [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:70:24: style: Parameter 'field' can be declared as pointer to const. However it seems that 'uclogic_input_mapping' is a callback function, if 'field' is declared with const you might also need to cast function pointer(s). [constParameterCallback] digimend-kernel-drivers-13/hid-uclogic-core.c:579:19: note: You might need to cast the function pointer here digimend-kernel-drivers-13/hid-uclogic-core.c:70:24: note: Parameter 'field' can be declared as pointer to const 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:76:25: style: Variable 'params' can be declared as pointer to const [constVariablePointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:79:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HID_DG_PEN [valueFlowBailoutIncompleteVar] head digimend-kernel-drivers-13/hid-uclogic-core.c:86:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] head digimend-kernel-drivers-13/hid-uclogic-core.c:86:2: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-core.c:99:20: style: Variable 'field' can be declared as pointer to const [constVariablePointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1080:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1135:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1183:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1218:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1252:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1271:26: style: Variable 'drvdata' can be declared as pointer to const [constVariablePointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1306:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1326:9: warning: Identical condition and return expression 'rc', return value is always 0 [identicalConditionAfterEarlyExit] digimend-kernel-drivers-13/hid-uclogic-params.c:1319:6: note: If condition 'rc' is true, the function will return/exit digimend-kernel-drivers-13/hid-uclogic-params.c:1326:9: note: Returning identical expression 'rc' 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1367:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1418:26: style: Variable 'drvdata' can be declared as pointer to const [constVariablePointer] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1430:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] head digimend-kernel-drivers-13/hid-uclogic-params.c:1577:0: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] head digimend-kernel-drivers-13/hid-uclogic-params.c:1577:2: error: failed to evaluate #if condition, undefined function-like macro invocation: KERNEL_VERSION( ... ) [preprocessorErrorDirective] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:1583:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:162:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:245:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:390:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:531:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:572:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:630:64: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable list [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:685:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:780:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] 2.18.0 digimend-kernel-drivers-13/hid-uclogic-params.c:851:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EINVAL [valueFlowBailoutIncompleteVar] DONE