2026-05-05 04:32 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 -j1 platform: Linux-6.8.0-1047-aws-aarch64-with-glibc2.35 python: 3.10.12 client-version: 1.4.0 compiler: g++ (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0 cppcheck: head 2.20.0 head-info: 519958a (2026-05-04 15:03:10 +0200) count: 83 75 elapsed-time: 0.8 0.7 head-timing-info: old-timing-info: head results: 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:733:4: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable topbar [valueFlowBailoutIncompleteVar] 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/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/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/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/stest.c:24:18: style:inconclusive: Function 'test' argument 1 names different: declaration '' definition 'path'. [funcArgNamesDifferentUnnamed] suckless-tools-49/dmenu/stest.c:24:36: style:inconclusive: Function 'test' argument 2 names different: declaration '' definition 'name'. [funcArgNamesDifferentUnnamed] suckless-tools-49/dmenu/stest.c:62:17: style: Variable 'd' can be declared as pointer to const [constVariablePointer] suckless-tools-49/dmenu/stest.c:63:38: style: Variable 'file' can be declared as pointer to const [constVariablePointer] 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/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/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:328:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] 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/slock/slock.c:311:17: style: Variable 'pwd' can be declared as pointer to const [constVariablePointer] suckless-tools-49/slock/slock.c:312:16: style: Variable 'grp' can be declared as pointer to const [constVariablePointer] 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/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/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/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/slstatus.c:54:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MAXLEN [valueFlowBailoutIncompleteVar] 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/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/slstatus/util.c:27:18: style:inconclusive: Function 'warn' argument 1 names different: declaration '' definition 'fmt'. [funcArgNamesDifferentUnnamed] suckless-tools-49/slstatus/util.c:37:17: style:inconclusive: Function 'die' argument 1 names different: declaration '' definition 'fmt'. [funcArgNamesDifferentUnnamed] 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/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/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] 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/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] diff: head suckless-tools-49/dmenu/stest.c:24:18: style:inconclusive: Function 'test' argument 1 names different: declaration '' definition 'path'. [funcArgNamesDifferentUnnamed] head suckless-tools-49/dmenu/stest.c:24:36: style:inconclusive: Function 'test' argument 2 names different: declaration '' definition 'name'. [funcArgNamesDifferentUnnamed] head suckless-tools-49/dmenu/stest.c:62:17: style: Variable 'd' can be declared as pointer to const [constVariablePointer] head suckless-tools-49/dmenu/stest.c:63:38: style: Variable 'file' can be declared as pointer to const [constVariablePointer] head suckless-tools-49/slock/slock.c:311:17: style: Variable 'pwd' can be declared as pointer to const [constVariablePointer] head suckless-tools-49/slock/slock.c:312:16: style: Variable 'grp' can be declared as pointer to const [constVariablePointer] head suckless-tools-49/slstatus/util.c:27:18: style:inconclusive: Function 'warn' argument 1 names different: declaration '' definition 'fmt'. [funcArgNamesDifferentUnnamed] head suckless-tools-49/slstatus/util.c:37:17: style:inconclusive: Function 'die' argument 1 names different: declaration '' definition 'fmt'. [funcArgNamesDifferentUnnamed] DONE