2025-11-24 04:37 ftp://ftp.de.debian.org/debian/pool/main/s/suckless-tools/suckless-tools_49.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --library=motif --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: 75 75 elapsed-time: 1.3 1.8 head-timing-info: old-timing-info: head results: suckless-tools-49/dmenu/stest.c:34:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable S_ISGID [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/stest.c:54:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/stest.c:63:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/util.c:16:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] suckless-tools-49/lsw/lsw.c:14:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BUFSIZ [valueFlowBailoutIncompleteVar] suckless-tools-49/lsw/lsw.c:46:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IsViewable [valueFlowBailoutIncompleteVar] suckless-tools-49/lsw/lsw.c:58:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/drw.c:105:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/drw.c:190:76: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XftColor [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/drw.c:217:91: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable pixel [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/drw.c:249:73: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable pixel [valueFlowBailoutIncompleteVar] suckless-tools-49/lsw/lsw.c:53:22: style: Parameter 'argv' can be declared as const array [constParameter] suckless-tools-49/slock/explicit_bzero.c:10:29: style: Parameter 'buf' can be declared as pointer to const [constParameterPointer] suckless-tools-49/dmenu/dmenu.c:85:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable lines [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:103:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CurrentTime [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:155:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable prompt [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:222:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GrabSuccess [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:311:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable worddelimiters [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:328:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NoSymbol [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:556:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:606:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VisibilityUnobscured [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:630:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable colors [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/dmenu.c:730:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VERSION [valueFlowBailoutIncompleteVar] suckless-tools-49/slock/slock.c:56:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] suckless-tools-49/slock/slock.c:94:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] suckless-tools-49/slock/slock.c:145:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KeyPress [valueFlowBailoutIncompleteVar] suckless-tools-49/slock/slock.c:241:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable colorname [valueFlowBailoutIncompleteVar] suckless-tools-49/slock/slock.c:321:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VERSION [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/datetime.c:14:39: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] suckless-tools-49/slstatus/components/ip.c:23:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NI_MAXHOST [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/ip.c:55:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_INET [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/ip.c:61:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_INET6 [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/ip.c:80:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable IFF_UP [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/ip.c:21:27: style: Variable 'ifa' can be declared as pointer to const [constVariablePointer] suckless-tools-49/slstatus/components/ip.c:67:27: style: Variable 'ifa' can be declared as pointer to const [constVariablePointer] suckless-tools-49/dmenu/dmenu.c:242:11: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] suckless-tools-49/dmenu/dmenu.c:242:56: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] suckless-tools-49/dmenu/dmenu.c:243:26: error: Common realloc mistake: 'tokv' nulled but not freed upon failure [memleakOnRealloc] suckless-tools-49/dmenu/dmenu.c:559:10: error: Common realloc mistake: 'items' nulled but not freed upon failure [memleakOnRealloc] suckless-tools-49/dmenu/dmenu.c:133:23: style: Parameter 'item' can be declared as pointer to const [constParameterPointer] suckless-tools-49/dmenu/dmenu.c:533:12: style: Variable 'q' can be declared as pointer to const [constVariablePointer] suckless-tools-49/slstatus/components/keymap.c:66:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XkbSymbolsNameMask [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/keymap.c:32:8: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] suckless-tools-49/slstatus/components/keymap.c:33:45: portability: Non reentrant function 'strtok' called. For threadsafe applications it is recommended to use the reentrant replacement function 'strtok_r'. [prohibitedstrtokCalled] suckless-tools-49/slstatus/components/keymap.c:12:31: style: Parameter 'sym' can be declared as pointer to const [constParameterPointer] suckless-tools-49/slock/slock.c:95:13: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] suckless-tools-49/slock/slock.c:164:23: portability: Non reentrant function 'crypt' called. For threadsafe applications it is recommended to use the reentrant replacement function 'crypt_r'. [prohibitedcryptCalled] suckless-tools-49/slock/slock.c:288:3: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] suckless-tools-49/slock/slock.c:329:14: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] suckless-tools-49/slock/slock.c:334:14: portability: Non reentrant function 'getgrnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrnam_r'. [prohibitedgetgrnamCalled] suckless-tools-49/slock/slock.c:345:7: portability: Non reentrant function 'crypt' called. For threadsafe applications it is recommended to use the reentrant replacement function 'crypt_r'. [prohibitedcryptCalled] suckless-tools-49/slock/slock.c:91:17: style: Variable 'pw' can be declared as pointer to const [constVariablePointer] suckless-tools-49/slock/slock.c:129:37: style: Parameter 'rr' can be declared as pointer to const [constParameterPointer] suckless-tools-49/slock/slock.c:133:30: style: Variable 'inputhash' can be declared as pointer to const [constVariablePointer] suckless-tools-49/slock/slock.c:224:41: style: Parameter 'rr' can be declared as pointer to const [constParameterPointer] suckless-tools-49/slstatus/components/num_files.c:12:17: style: Variable 'dp' can be declared as pointer to const [constVariablePointer] suckless-tools-49/slstatus/components/uptime.c:24:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CLOCK_MONOTONIC [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/components/user.c:21:13: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] suckless-tools-49/slstatus/components/volume.c:193:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SOUND_DEVICE_NAMES [valueFlowBailoutIncompleteVar] suckless-tools-49/dmenu/drw.c:50:45: style:inconclusive: Function 'drw_create' argument 3 names different: declaration 'win' definition 'root'. [funcArgNamesDifferent] suckless-tools-49/dmenu/drw.h:30:50: note: Function 'drw_create' argument 3 names different: declaration 'win' definition 'root'. suckless-tools-49/dmenu/drw.c:50:45: note: Function 'drw_create' argument 3 names different: declaration 'win' definition 'root'. suckless-tools-49/dmenu/drw.c:161:23: style:inconclusive: Function 'drw_fontset_free' argument 1 names different: declaration 'set' definition 'font'. [funcArgNamesDifferent] suckless-tools-49/dmenu/drw.h:36:28: note: Function 'drw_fontset_free' argument 1 names different: declaration 'set' definition 'font'. suckless-tools-49/dmenu/drw.c:161:23: note: Function 'drw_fontset_free' argument 1 names different: declaration 'set' definition 'font'. suckless-tools-49/slstatus/slstatus.c:54:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MAXLEN [valueFlowBailoutIncompleteVar] suckless-tools-49/sprop/sprop.c:34:18: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] suckless-tools-49/slstatus/components/volume.c:217:24: warning: Uninitialized variable: v [uninitvar] suckless-tools-49/slstatus/components/volume.c:205:17: note: Assuming condition is false suckless-tools-49/slstatus/components/volume.c:217:24: note: Uninitialized variable: v suckless-tools-49/slstatus/util.c:16:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] suckless-tools-49/slstatus/util.c:140:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] suckless-tools-49/sselp/sselp.c:52:17: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] suckless-tools-49/ssid/ssid.c:16:16: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] suckless-tools-49/swarp/swarp.c:17:17: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] suckless-tools-49/tabbed/xembed.c:18:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] suckless-tools-49/wmname/wmname.c:32:19: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] suckless-tools-49/slstatus/slstatus.c:34:53: style: Parameter 'a' can be declared as pointer to const [constParameterPointer] suckless-tools-49/slstatus/slstatus.c:34:73: style: Parameter 'b' can be declared as pointer to const [constParameterPointer] suckless-tools-49/xssstate/xssstate.c:55:18: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] suckless-tools-49/tabbed/tabbed.c:447:30: error: There is an unknown macro here somewhere. Configuration is required. If VERSION is a macro then please configure it. [unknownMacro] diff: DONE