2025-11-06 16:07 ftp://ftp.de.debian.org/debian/pool/main/libw/libwacom/libwacom_2.16.1.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=gtk --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-6.12.48+deb13-amd64-x86_64-with-glibc2.41 python: 3.13.5 client-version: 1.3.67 compiler: g++ (Debian 14.2.0-19) 14.2.0 cppcheck: head 2.18.0 head-info: 2c5b872 (2025-11-06 13:42:16 +0200) count: 155 151 elapsed-time: 0.4 0.4 head-timing-info: old-timing-info: head results: libwacom-libwacom-2.16.1/test/test-dbverify.c:55:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-dbverify.c:73:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-dbverify.c:114:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-dbverify.c:134:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-dbverify.c:173:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-dbverify.c:211:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOPSRCDIR [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-dbverify.c:224:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:40:2: warning: If memory allocation fails, then there is a possible null pointer dereference: error [nullPointerOutOfMemory] libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:39:28: note: Assuming allocation function fails libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:39:28: note: Assignment 'error=malloc(sizeof(*error))', assigned value is 0 libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:40:2: note: Null pointer dereference libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:41:2: warning: If memory allocation fails, then there is a possible null pointer dereference: error [nullPointerOutOfMemory] libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:39:28: note: Assuming allocation function fails libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:39:28: note: Assignment 'error=malloc(sizeof(*error))', assigned value is 0 libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:41:2: note: Null pointer dereference libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:54:37: style: Parameter 'error' can be declared as pointer to const [constParameterPointer] libwacom-libwacom-2.16.1/libwacom/libwacom-error.c:60:40: style: Parameter 'error' can be declared as pointer to const [constParameterPointer] libwacom-libwacom-2.16.1/test/test-dbverify.c:60:3: warning: Assert statement calls a function which may have desired side effects: 'asprintf'. [assertWithSideEffect] libwacom-libwacom-2.16.1/test/test-dbverify.c:62:3: warning: Assert statement calls a function which may have desired side effects: 'remove'. [assertWithSideEffect] libwacom-libwacom-2.16.1/test/test-dbverify.c:67:2: warning: Assert statement calls a function which may have desired side effects: 'remove'. [assertWithSideEffect] libwacom-libwacom-2.16.1/test/test-dbverify.c:177:3: warning: Assert statement calls a function which may have desired side effects: 'asprintf'. [assertWithSideEffect] libwacom-libwacom-2.16.1/test/test-dbverify.c:171:7: style: Local variable 'i' shadows outer variable [shadowVariable] libwacom-libwacom-2.16.1/test/test-dbverify.c:164:6: note: Shadowed declaration libwacom-libwacom-2.16.1/test/test-dbverify.c:171:7: note: Shadow variable libwacom-libwacom-2.16.1/test/test-dbverify.c:48:17: style: Variable 'file' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/test/test-deprecated.c:62:17: style: Variable 'sym' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:480:39: debug: Scope::checkVariable found variable 'paired_id_list' with varid 0. [varid0] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:510:30: debug: Scope::checkVariable found variable 'axes' with varid 0. [varid0] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:547:16: debug: Scope::checkVariable found variable 'value' with varid 0. [varid0] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:831:14: debug: Scope::checkVariable found variable 'v' with varid 0. [varid0] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:930:18: debug: Scope::checkVariable found variable 'value' with varid 0. [varid0] libwacom-libwacom-2.16.1/libwacom/libwacom.c:382:14: debug: Scope::checkVariable found variable 'v' with varid 0. [varid0] libwacom-libwacom-2.16.1/libwacom/libwacom.c:484:14: debug: Scope::checkVariable found variable 'v' with varid 0. [varid0] libwacom-libwacom-2.16.1/test/test-ltversion.c:5:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LIBWACOM_LT_VERSION [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:47:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOPSRCDIR [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:112:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WCLASS_INTUOS4 [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:145:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_BUTTON_RING_MODESWITCH [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:191:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_DEVICE_INTEGRATED_DISPLAY [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:207:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WCLASS_CINTIQ [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:225:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BTN_0 [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:254:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BTN_BACK [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:269:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_DEVICE_INTEGRATED_DISPLAY [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:281:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_DEVICE_INTEGRATED_DISPLAY [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-load.c:99:15: style: Variable 'device' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:67:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WSTYLUS_MOBILE [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:91:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:118:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:168:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_ERASER_INVERT [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:177:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_ERASER_BUTTON [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:201:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_AXIS_TYPE_TILT [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:209:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_AXIS_TYPE_TILT [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:217:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_AXIS_TYPE_PRESSURE [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:225:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_AXIS_TYPE_PRESSURE [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:233:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_AXIS_TYPE_DISTANCE [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:241:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_AXIS_TYPE_DISTANCE [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:273:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:413:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WSTYLUS_MOBILE [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:437:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:467:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOPSRCDIR [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:439:22: style: Local variable 'all_styli' shadows outer variable [shadowVariable] libwacom-libwacom-2.16.1/test/test-stylus-validity.c:38:28: note: Shadowed declaration libwacom-libwacom-2.16.1/test/test-stylus-validity.c:439:22: note: Shadow variable libwacom-libwacom-2.16.1/libwacom/util-strings.h:119:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/util-strings.h:149:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/util-strings.h:209:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:216:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:249:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:277:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:297:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:404:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GKeyFile [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:547:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:619:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:698:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BTN_MISC [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:731:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EV_KEY [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:773:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BTN_LEFT [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:818:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:831:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable v [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:873:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:930:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:988:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1008:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable device [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1164:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1230:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1318:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1330:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1384:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GList [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:56:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_BUTTON_DIRECTION [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:114:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_BUTTON_POSITION_LEFT [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:232:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WACOM_DEVICE_INTEGRATED_SYSTEM [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:260:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:290:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:312:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/test/test-tablet-validity.c:464:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TOPSRCDIR [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:103:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GUdevDevice [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:204:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GList [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:220:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GUdevDevice [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:244:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GRegex [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:281:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GUdevClient [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:382:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable v [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:460:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:484:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable v [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:588:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:698:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GList [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:792:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:849:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:875:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:937:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EV_KEY [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1113:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_array_unref [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1708:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1784:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_array_unref [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/debug-device.c:111:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WBUSTYPE_USB [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/debug-device.c:152:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GStrv [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/debug-device.c:455:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GError [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-compatible-styli.c:41:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-compatible-styli.c:78:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DATABASEPATH [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-devices.c:103:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-devices.c:84:69: style: Parameter 'data' can be declared as pointer to const. However it seems that 'check_format' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/tools/list-devices.c:96:43: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/tools/list-devices.c:84:69: note: Parameter 'data' can be declared as pointer to const libwacom-libwacom-2.16.1/tools/debug-device.c:466:3: error: Memory leak: context [memleak] libwacom-libwacom-2.16.1/tools/debug-device.c:203:4: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] libwacom-libwacom-2.16.1/tools/debug-device.c:382:15: style: Local variable 'i' shadows outer variable [shadowVariable] libwacom-libwacom-2.16.1/tools/debug-device.c:360:13: note: Shadowed declaration libwacom-libwacom-2.16.1/tools/debug-device.c:382:15: note: Shadow variable libwacom-libwacom-2.16.1/tools/debug-device.c:392:15: style: Local variable 'i' shadows outer variable [shadowVariable] libwacom-libwacom-2.16.1/tools/debug-device.c:360:13: note: Shadowed declaration libwacom-libwacom-2.16.1/tools/debug-device.c:392:15: note: Shadow variable libwacom-libwacom-2.16.1/tools/debug-device.c:172:9: style: Variable 'busstr' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/tools/debug-device.c:312:10: style: Variable 'ledstr' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/tools/list-local-devices.c:73:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WCOMPARE_MATCHES [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-local-devices.c:97:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-local-devices.c:120:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable g_autofree [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-local-devices.c:206:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GUdevClient [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-local-devices.c:251:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GOptionContext [valueFlowBailoutIncompleteVar] libwacom-libwacom-2.16.1/tools/list-local-devices.c:77:21: style: Parameter 'data' can be declared as pointer to const. However it seems that 'print_node' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/tools/list-local-devices.c:88:27: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/tools/list-local-devices.c:77:21: note: Parameter 'data' can be declared as pointer to const libwacom-libwacom-2.16.1/tools/list-local-devices.c:77:36: style: Parameter 'user_data' can be declared as pointer to const. However it seems that 'print_node' is a callback function, if 'user_data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/tools/list-local-devices.c:88:27: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/tools/list-local-devices.c:77:36: note: Parameter 'user_data' can be declared as pointer to const libwacom-libwacom-2.16.1/tools/list-local-devices.c:94:24: style: Parameter 'data' can be declared as pointer to const. However it seems that 'print_devnode' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/tools/list-local-devices.c:137:27: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/tools/list-local-devices.c:94:24: note: Parameter 'data' can be declared as pointer to const libwacom-libwacom-2.16.1/tools/list-local-devices.c:231:69: style: Parameter 'data' can be declared as pointer to const. However it seems that 'check_format' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/tools/list-local-devices.c:244:43: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/tools/list-local-devices.c:231:69: note: Parameter 'data' can be declared as pointer to const libwacom-libwacom-2.16.1/libwacom/libwacom.c:1258:56: style:inconclusive: Function 'libwacom_remove_match' argument 2 names different: declaration 'newmatch' definition 'to_remove'. [funcArgNamesDifferent] libwacom-libwacom-2.16.1/libwacom/libwacomint.h:175:61: note: Function 'libwacom_remove_match' argument 2 names different: declaration 'newmatch' definition 'to_remove'. libwacom-libwacom-2.16.1/libwacom/libwacom.c:1258:56: note: Function 'libwacom_remove_match' argument 2 names different: declaration 'newmatch' definition 'to_remove'. libwacom-libwacom-2.16.1/libwacom/libwacom.c:1589:64: style:inconclusive: Function 'libwacom_stylus_get_for_id' argument 2 names different: declaration 'id' definition 'tool_id'. [funcArgNamesDifferent] libwacom-libwacom-2.16.1/libwacom/libwacom.h:922:83: note: Function 'libwacom_stylus_get_for_id' argument 2 names different: declaration 'id' definition 'tool_id'. libwacom-libwacom-2.16.1/libwacom/libwacom.c:1589:64: note: Function 'libwacom_stylus_get_for_id' argument 2 names different: declaration 'id' definition 'tool_id'. libwacom-libwacom-2.16.1/libwacom/libwacom.c:548:16: style: Variable 'as' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:549:16: style: Variable 'bs' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:564:16: style: Variable 'ba' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:565:16: style: Variable 'bb' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:699:10: style: Variable 'entry' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:706:10: style: Variable 'entry' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:721:17: style: Variable 'bus' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:751:27: style: Variable 'approach' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:886:8: style: Variable 'leds_name' can be declared as const array [constVariable] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1231:15: style: Variable 'm' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1243:61: style: Parameter 'newmatch' can be declared as pointer to const [constParameterPointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1261:15: style: Variable 'm' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1263:16: style: Variable 'dflt' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1492:15: style: Variable 'b' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom.c:1572:15: style: Variable 'b' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:689:4: warning: %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:727:4: warning: %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:395:26: error: Allocation with g_strdup_printf, g_array_append_vals doesn't release it. [leakNoVarFunctionCall] libwacom-libwacom-2.16.1/libwacom/util-strings.h:103:17: warning: Either the condition 'strp' is redundant or there is possible null pointer dereference: strp. [nullPointerRedundantCheck] libwacom-libwacom-2.16.1/libwacom/util-strings.h:105:20: note: Assuming that condition 'strp' is not redundant libwacom-libwacom-2.16.1/libwacom/util-strings.h:103:17: note: Null pointer dereference libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1131:22: warning: Either the condition '!name' is redundant or there is possible null pointer dereference: name. [nullPointerRedundantCheck] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1134:6: note: Assuming that condition '!name' is not redundant libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1131:22: note: Null pointer dereference libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:685:4: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:691:4: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:729:4: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:950:13: style: Local variable 'i' shadows outer variable [shadowVariable] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:910:8: note: Shadowed declaration libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:950:13: note: Shadow variable libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:387:17: style: Variable 'id' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:839:16: style: Variable 'button' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1192:16: style: Variable 'match' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1226:17: style: Variable 'file' can be declared as pointer to const [constVariablePointer] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1248:28: style: Parameter 'id' can be declared as pointer to const. However it seems that 'stylus_hash' is a callback function, if 'id' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1276:52: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1248:28: note: Parameter 'id' can be declared as pointer to const libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1255:31: style: Parameter 'a' can be declared as pointer to const. However it seems that 'stylus_compare' is a callback function, if 'a' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1277:25: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1255:31: note: Parameter 'a' can be declared as pointer to const libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1255:49: style: Parameter 'b' can be declared as pointer to const. However it seems that 'stylus_compare' is a callback function, if 'b' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1277:25: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/libwacom/libwacom-database.c:1255:49: note: Parameter 'b' can be declared as pointer to const diff: head libwacom-libwacom-2.16.1/libwacom/libwacom.c:699:10: style: Variable 'entry' can be declared as pointer to const [constVariablePointer] head libwacom-libwacom-2.16.1/libwacom/libwacom.c:706:10: style: Variable 'entry' can be declared as pointer to const [constVariablePointer] head libwacom-libwacom-2.16.1/libwacom/libwacom.c:751:27: style: Variable 'approach' can be declared as pointer to const [constVariablePointer] head libwacom-libwacom-2.16.1/tools/list-local-devices.c:94:24: style: Parameter 'data' can be declared as pointer to const. However it seems that 'print_devnode' is a callback function, if 'data' is declared with const you might also need to cast function pointer(s). [constParameterCallback] libwacom-libwacom-2.16.1/tools/list-local-devices.c:137:27: note: You might need to cast the function pointer here libwacom-libwacom-2.16.1/tools/list-local-devices.c:94:24: note: Parameter 'data' can be declared as pointer to const DONE