2026-05-01 23:51 ftp://ftp.de.debian.org/debian/pool/main/g/g810-led/g810-led_0.4.3.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 -j6 platform: Linux-7.0.3+deb14-amd64-x86_64-with-glibc2.42 python: 3.13.12 client-version: 1.4.0 compiler: g++ (Debian 15.2.0-17) 15.2.0 cppcheck: head 2.20.0 head-info: e5c4a734 (2026-05-01 11:10:43 +0200) count: 48 47 elapsed-time: 0.8 0.6 head-timing-info: old-timing-info: head results: g810-led-0.4.3/src/helpers/help.cpp:49:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/helpers/help.cpp:137:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/helpers/help.cpp:272:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/helpers/help.cpp:312:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/main.cpp:35:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/main.cpp:44:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/main.cpp:258:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/main.cpp:326:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/classes/Keyboard.cpp:423:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable red [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/classes/Keyboard.cpp:916:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable logo [valueFlowBailoutIncompleteVar] g810-led-0.4.3/src/classes/Keyboard.h:257:3: warning: Member variable 'LedKeyboard::currentDevice' is not initialized. [uninitMemberVarPrivate] g810-led-0.4.3/src/classes/Keyboard.h:164:18: warning: Member variable 'DeviceInfo::model' has no initializer. [uninitMemberVarNoCtor] g810-led-0.4.3/src/helpers/help.cpp:300:46: style: Expression is always false because 'else if' condition matches previous condition at line 298. [multiCondition] g810-led-0.4.3/src/helpers/help.cpp:31:46: performance: Function parameter 'cmdName' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/helpers/utils.cpp:27:37: performance: Function parameter 'cmd' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/helpers/utils.cpp:33:36: performance: Function parameter 'val' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/helpers/utils.cpp:40:36: performance: Function parameter 'val' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/helpers/utils.cpp:47:37: performance: Function parameter 'val' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/helpers/utils.cpp:59:41: performance: Function parameter 'val' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/helpers/utils.cpp:206:33: performance: Function parameter 'val' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/classes/Keyboard.cpp:42:46: style: The member function 'LedKeyboard::listKeyboards' can be static. [functionStatic] g810-led-0.4.3/src/classes/Keyboard.h:189:27: note: The member function 'LedKeyboard::listKeyboards' can be static. g810-led-0.4.3/src/classes/Keyboard.cpp:42:46: note: The member function 'LedKeyboard::listKeyboards' can be static. g810-led-0.4.3/src/classes/Keyboard.cpp:137:19: style:inconclusive: Technically the member function 'LedKeyboard::isOpen' can be const. [functionConst] g810-led-0.4.3/src/classes/Keyboard.h:191:8: note: Technically the member function 'LedKeyboard::isOpen' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:137:19: note: Technically the member function 'LedKeyboard::isOpen' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:344:38: style:inconclusive: Technically the member function 'LedKeyboard::getCurrentDevice' can be const. [functionConst] g810-led-0.4.3/src/classes/Keyboard.h:194:14: note: Technically the member function 'LedKeyboard::getCurrentDevice' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:344:38: note: Technically the member function 'LedKeyboard::getCurrentDevice' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:375:41: style:inconclusive: Technically the member function 'LedKeyboard::getKeyboardModel' can be const. [functionConst] g810-led-0.4.3/src/classes/Keyboard.h:197:17: note: Technically the member function 'LedKeyboard::getKeyboardModel' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:375:41: note: Technically the member function 'LedKeyboard::getKeyboardModel' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:1025:19: style: The member function 'LedKeyboard::sendDataInternal' can be static. [functionStatic] g810-led-0.4.3/src/classes/Keyboard.h:268:8: note: The member function 'LedKeyboard::sendDataInternal' can be static. g810-led-0.4.3/src/classes/Keyboard.cpp:1025:19: note: The member function 'LedKeyboard::sendDataInternal' can be static. g810-led-0.4.3/src/classes/Keyboard.cpp:1062:41: style:inconclusive: Technically the member function 'LedKeyboard::getKeyGroupAddress' can be const. [functionConst] g810-led-0.4.3/src/classes/Keyboard.h:269:17: note: Technically the member function 'LedKeyboard::getKeyGroupAddress' can be const. g810-led-0.4.3/src/classes/Keyboard.cpp:1062:41: note: Technically the member function 'LedKeyboard::getKeyGroupAddress' can be const. g810-led-0.4.3/src/classes/Keyboard.h:194:14: performance: Function 'getCurrentDevice()' should return member 'currentDevice' by const reference. [returnByReference] g810-led-0.4.3/src/classes/Keyboard.cpp:496:44: style: Assigned value 'sendDataInternal(data)' is always false [knownConditionTrueFalse] g810-led-0.4.3/src/classes/Keyboard.cpp:496:44: note: Calling function 'sendDataInternal' returns 0 g810-led-0.4.3/src/classes/Keyboard.cpp:496:44: note: Assigned value 'sendDataInternal(data)' is always false g810-led-0.4.3/src/classes/Keyboard.cpp:626:45: style: Assigned value 'sendDataInternal(data)' is always false [knownConditionTrueFalse] g810-led-0.4.3/src/classes/Keyboard.cpp:626:45: note: Calling function 'sendDataInternal' returns 0 g810-led-0.4.3/src/classes/Keyboard.cpp:626:45: note: Assigned value 'sendDataInternal(data)' is always false g810-led-0.4.3/src/classes/Keyboard.cpp:691:60: style: Condition '!setRegion(rIndex,color)' is always true [knownConditionTrueFalse] g810-led-0.4.3/src/classes/Keyboard.cpp:835:27: note: Calling function 'sendDataInternal' returns 0 g810-led-0.4.3/src/classes/Keyboard.cpp:691:71: note: Calling function 'setRegion' returns 0 g810-led-0.4.3/src/classes/Keyboard.cpp:691:60: note: Condition '!setRegion(rIndex,color)' is always true g810-led-0.4.3/src/classes/Keyboard.cpp:147:70: performance: Function parameter 'serial' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/classes/Keyboard.cpp:1025:51: style: Parameter 'data' can be declared as reference to const [constParameterReference] g810-led-0.4.3/src/classes/Keyboard.cpp:417:43: style: Unused variable: KeyByColorsIterator [unusedVariable] g810-led-0.4.3/src/main.cpp:219:24: style: The scope of the variable 'color' can be reduced. [variableScope] g810-led-0.4.3/src/main.cpp:57:46: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:66:48: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:66:66: performance: Function parameter 'arg3' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:77:42: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:77:60: performance: Function parameter 'arg3' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:89:44: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:97:44: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:105:48: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:113:45: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:113:63: performance: Function parameter 'arg3' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:169:50: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:177:50: performance: Function parameter 'arg2' should be passed by const reference. [passedByValue] g810-led-0.4.3/src/main.cpp:245:41: style: Parameter 'arg2' can be declared as pointer to const [constParameterPointer] g810-led-0.4.3/src/main.cpp:49:68: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] diff: head g810-led-0.4.3/src/classes/Keyboard.h:164:18: warning: Member variable 'DeviceInfo::model' has no initializer. [uninitMemberVarNoCtor] DONE