2025-08-29 17:01 ftp://ftp.de.debian.org/debian/pool/main/x/xserver-xorg-input-mouse/xserver-xorg-input-mouse_1.9.3.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=motif --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 -j10 platform: Linux-6.14.8-2-pve-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 cppcheck: head 2.18.0 head-info: 478055e (2025-08-29 18:53:24 +0200) count: 2 93 elapsed-time: 0.0 3.1 head-timing-info: old-timing-info: head results: xf86-input-mouse-1.9.3/src/mouse.h:35:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] xf86-input-mouse-1.9.3/src/mouse.h:35:2: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] diff: 2.18.0 xf86-input-mouse-1.9.3/src/bsd_mouse.c:142:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/bsd_mouse.c:772:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/hurd_mouse.c:125:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_ERROR [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/hurd_mouse.c:144:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_CONFIG [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/hurd_mouse.c:190:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/hurd_mouse.c:229:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/hurd_mouse.c:64:18: style: union member 'Anonymous0::sc' is never used. [unusedStructMember] 2.18.0 xf86-input-mouse-1.9.3/src/lnx_mouse.c:119:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/lnx_mouse.c:71:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/lnx_mouse.c:95:12: style: Variable 'fd' is assigned a value that is never used. [unreadVariable] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:1073:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BTN_LABEL_PROP_BTN_LEFT [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:1095:64: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XA_INTEGER [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:1137:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BTN_LABEL_PROP [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:1401:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:1692:41: style: Parameter 'ctrl' can be declared as pointer to const. However it seems that 'MouseCtrl' is a callback function, if 'ctrl' is declared with const you might also need to cast function pointer(s). [constParameterCallback] xf86-input-mouse-1.9.3/src/mouse.c:976:18: note: You might need to cast the function pointer here xf86-input-mouse-1.9.3/src/mouse.c:1692:41: note: Parameter 'ctrl' can be declared as pointer to const 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:1723:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2051:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2080:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2100:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2399:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2416:40: style:inconclusive: Function 'MousePostEvent' argument 2 names different: declaration 'buttons' definition 'truebuttons'. [funcArgNamesDifferent] xf86-input-mouse-1.9.3/src/mouse.c:152:52: note: Function 'MousePostEvent' argument 2 names different: declaration 'buttons' definition 'truebuttons'. xf86-input-mouse-1.9.3/src/mouse.c:2416:40: note: Function 'MousePostEvent' argument 2 names different: declaration 'buttons' definition 'truebuttons'. 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2472:12: style: Variable 'dw' is assigned a value that is never used. [unreadVariable] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2477:16: style: Variable 'dw' is assigned a value that is never used. [unreadVariable] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2483:16: style: Variable 'dw' is assigned a value that is never used. [unreadVariable] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2495:12: style: Variable 'dw' is assigned a value that is never used. [unreadVariable] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2592:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2735:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2764:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2767:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2770:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2773:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2778:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2815:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2828:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2830:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2832:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2834:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2836:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2838:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2850:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2856:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2870:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2878:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2966:21: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:2973:17: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:300:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_CONFIG [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3029:17: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3053:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3244:21: style:inconclusive: Found duplicate branches for 'if' and 'else'. [duplicateBranch] xf86-input-mouse-1.9.3/src/mouse.c:3250:23: note: Found duplicate branches for 'if' and 'else'. xf86-input-mouse-1.9.3/src/mouse.c:3244:21: note: Found duplicate branches for 'if' and 'else'. 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3266:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_PROBED [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3288:52: style: Parameter 'protoList' can be declared as pointer to const [constParameterPointer] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3292:20: style: Variable 'para' can be declared as pointer to const [constVariablePointer] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3322:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3411:17: style: Condition '!next_header_candidate' is always true [knownConditionTrueFalse] xf86-input-mouse-1.9.3/src/mouse.c:3406:37: note: Assignment 'next_header_candidate=0', assigned value is 0 xf86-input-mouse-1.9.3/src/mouse.c:3411:17: note: Condition '!next_header_candidate' is always true 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3559:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_INFO [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3590:34: style: Condition 'pMse->protocolID!=PROT_AUTO' is always false [knownConditionTrueFalse] xf86-input-mouse-1.9.3/src/mouse.c:3586:32: note: Assignment 'pMse->protocolID=PROT_AUTO', assigned value is 21 xf86-input-mouse-1.9.3/src/mouse.c:3590:34: note: Condition 'pMse->protocolID!=PROT_AUTO' is always false 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3620:34: style: Condition 'pMse->protocolID!=PROT_AUTO' is always false [knownConditionTrueFalse] xf86-input-mouse-1.9.3/src/mouse.c:3616:32: note: Assignment 'pMse->protocolID=PROT_AUTO', assigned value is 21 xf86-input-mouse-1.9.3/src/mouse.c:3620:34: note: Condition 'pMse->protocolID!=PROT_AUTO' is always false 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3681:19: style: Variable 'defaults' can be declared as pointer to const [constVariablePointer] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3713:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3802:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3815:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:3834:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:707:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:799:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:840:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_WARNING [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:856:16: style: Redundant initialization for 'protocolID'. The initialized value is overwritten before it is read. [redundantInitialization] xf86-input-mouse-1.9.3/src/mouse.c:854:32: note: protocolID is initialized xf86-input-mouse-1.9.3/src/mouse.c:856:16: note: protocolID is overwritten 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:885:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_ERROR [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/mouse.c:948:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_DEFAULT [valueFlowBailoutIncompleteVar] head xf86-input-mouse-1.9.3/src/mouse.h:35:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] head xf86-input-mouse-1.9.3/src/mouse.h:35:2: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:167:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_INFO [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:191:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable milliseconds [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:298:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XF86_M_DTR [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:302:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:321:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:404:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_INFO [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:501:39: style: Parameter 'buf' can be declared as pointer to const [constParameterPointer] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:549:31: style: Parameter 's' can be declared as pointer to const [constParameterPointer] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:567:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:596:13: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:601:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:650:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:677:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/pnp.c:771:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable X_PROBED [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:155:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:212:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:254:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:286:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:485:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Success [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:604:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:620:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:638:11: style: Variable 'strmod' can be declared as pointer to const [constVariablePointer] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:652:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:702:61: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-input-mouse-1.9.3/src/sun_mouse.c:725:57: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] DONE