2025-11-18 22:39 ftp://ftp.de.debian.org/debian/pool/main/q/qlipper/qlipper_5.1.2.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --library=qt --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 -j4 platform: Linux-6.12.57+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: 1ca1246 (2025-11-18 18:56:39 +0100) count: 87 86 elapsed-time: 0.1 0.1 head-timing-info: old-timing-info: head results: qlipper-5.1.2/qmenuview/qmenuview.cpp:42:51: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DecorationRole [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qmenuview/qmenuview.cpp:73:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable StatusTipRole [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qmenuview/qmenuview.cpp:218:53: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DecorationRole [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:77:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ShiftModifier [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:165:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable key [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:185:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable key [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:190:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable key [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:207:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable enabled [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:212:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable enabled [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut.cpp:222:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable enabled [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qmenuview/qmenuview.cpp:31:19: warning: Member variable 'QMenuViewPrivate::m_model' is not initialized in the constructor. [uninitMemberVar] qlipper-5.1.2/qmenuview/qmenuview.h:40:15: style: Virtual function 'setModel' is called from destructor '~QMenuView()' at line 141. Dynamic binding is not used. [virtualCallInConstructor] qlipper-5.1.2/qmenuview/qmenuview.cpp:141:2: note: Calling setModel qlipper-5.1.2/qmenuview/qmenuview.h:40:15: note: setModel is a virtual function qlipper-5.1.2/qmenuview/qmenuview.h:37:2: style: Class 'QMenuView' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] qlipper-5.1.2/qmenuview/qmenuview_p.h:36:2: style: Class 'QMenuViewPrivate' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] qlipper-5.1.2/qxt/qxtglobal.h:229:66: error: Found an exit path from function with non-void return type that has missing return statement [missingReturn] qlipper-5.1.2/qxt/qxtglobal.h:228:5: warning: Member variable 'QxtPrivateInterface < QxtGlobalShortcut , QxtGlobalShortcutPrivate >::pvt' is not initialized in the copy constructor. [uninitMemberVarPrivate] qlipper-5.1.2/qxt/qxtglobal.h:229:26: warning: Member variable 'QxtPrivateInterface < QxtGlobalShortcut , QxtGlobalShortcutPrivate >::pvt' is not assigned a value in 'QxtPrivateInterface < QxtGlobalShortcut , QxtGlobalShortcutPrivate >::operator='. [operatorEqVarError] qlipper-5.1.2/qxt/qxtglobal.h:161:1: style: The class 'QxtPrivate < QxtGlobalShortcut >' does not declare a constructor although it has private member variables which likely require initialization. [noConstructor] qlipper-5.1.2/qxt/qxtglobal.h:229:26: error: No 'return' statement in non-void function causes undefined behavior. [operatorEqMissingReturnStatement] qlipper-5.1.2/qxt/qxtglobalshortcut_p.h:52:6: style: The destructor '~QxtGlobalShortcutPrivate' overrides a destructor in a base class but is not marked with a 'override' specifier. [missingOverride] qlipper-5.1.2/qxt/qxtglobal.h:164:14: note: Virtual destructor in base class qlipper-5.1.2/qxt/qxtglobalshortcut_p.h:52:6: note: Destructor in derived class qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget_p.h:48:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable d_ptr [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget_p.h:103:71: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Fixed [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:48:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable kEventClassKeyboard [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:275:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable StrongFocus [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:61:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ShiftModifier [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:306:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LeftToRight [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:81:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable kVK_Return [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:393:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NativeText [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:231:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable kEventClassKeyboard [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:438:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KeyPress [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:478:54: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SHIFT [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:563:54: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SHIFT [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_win.cpp:46:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable WM_HOTKEY [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_win.cpp:65:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ShiftModifier [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_win.cpp:84:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VK_ESCAPE [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:159:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KeyPress [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:204:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ShiftModifier [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:227:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NoSymbol [valueFlowBailoutIncompleteVar] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget_p.h:48:5: performance:inconclusive: Technically the member function 'QKeySequenceWidgetPrivate::d_func' can be static (but you may consider moving to unnamed namespace). [functionStatic] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.h:92:13: performance: Function 'noneText()' should return member 'noneSequenceText' by const reference. [returnByReference] qlipper-5.1.2/qxt/qxtglobalshortcut_win.cpp:79:57: style:inconclusive: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. [funcArgNamesDifferent] qlipper-5.1.2/qxt/qxtglobalshortcut_p.h:75:42: note: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. qlipper-5.1.2/qxt/qxtglobalshortcut_win.cpp:79:57: note: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:105:10: style:inconclusive: Technically the member function '::QxtX11Data::isValid' can be const. [functionConst] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:54:66: performance: Function parameter 'noneString' should be passed by const reference. [passedByValue] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:82:48: performance: Function parameter 'noneString' should be passed by const reference. [passedByValue] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:187:52: performance: Function parameter 'text' should be passed by const reference. [passedByValue] qlipper-5.1.2/qkeysequencewidget/qkeysequencewidget.cpp:248:79: performance: Function parameter 'noneStr' should be passed by const reference. [passedByValue] qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:220:57: style:inconclusive: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. [funcArgNamesDifferent] qlipper-5.1.2/qxt/qxtglobalshortcut_p.h:75:42: note: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:220:57: note: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:54:66: style: Parameter 'event' can be declared as pointer to const. However it seems that 'qxtX11ErrorHandler' is a callback function, if 'event' is declared with const you might also need to cast function pointer(s). [constParameterCallback] qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:77:51: note: You might need to cast the function pointer here qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:54:66: note: Parameter 'event' can be declared as pointer to const qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:161:20: style: Variable 'key' can be declared as pointer to const [constVariablePointer] qlipper-5.1.2/src/clipboardwrap.cpp:33:9: style: Class 'WorkGuard' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:228:9: style: Condition '!qxt_mac_handler_installed' is always true [knownConditionTrueFalse] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:185:32: style: C-style pointer casting [cstyleCast] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:188:21: warning: Potentially invalid type conversion in old-style C cast, clarify/fix with C++ cast [dangerousTypeCast] qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:74:57: style:inconclusive: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. [funcArgNamesDifferent] qlipper-5.1.2/qxt/qxtglobalshortcut_p.h:75:42: note: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:74:57: note: Function 'nativeKeycode' argument 1 names different: declaration 'keycode' definition 'key'. qlipper-5.1.2/qxt/qxtglobalshortcut_mac.cpp:212:43: style: Variable 'rec' can be declared as pointer to const [constVariablePointer] qlipper-5.1.2/src/main.cpp:46:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable timeout [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlipperitem.h:50:5: style: Class 'QlipperItem' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] qlipper-5.1.2/src/qlipperitem.h:52:5: style: Class 'QlipperItem' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] qlipper-5.1.2/src/qlipperitem.h:55:22: performance: Function 'content()' should return member 'm_content' by const reference. [returnByReference] qlipper-5.1.2/src/qlipperitem.h:56:13: performance: Function 'display()' should return member 'm_display' by const reference. [returnByReference] qlipper-5.1.2/src/qlipperitem.cpp:167:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Clipboard [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippermodel.cpp:43:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Clipboard [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippermodel.cpp:124:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ItemIsEditable [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippermodel.cpp:129:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Selection [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippernetwork.cpp:61:22: performance:inconclusive: Either there is a missing 'override', or the member function 'QlipperNetwork::sendData' can be static. [functionStatic] qlipper-5.1.2/src/qlippernetwork.h:38:10: note: Either there is a missing 'override', or the member function 'QlipperNetwork::sendData' can be static. qlipper-5.1.2/src/qlippernetwork.cpp:61:22: note: Either there is a missing 'override', or the member function 'QlipperNetwork::sendData' can be static. qlipper-5.1.2/src/qlippernetwork.cpp:80:22: performance:inconclusive: Either there is a missing 'override', or the member function 'QlipperNetwork::readData' can be static. [functionStatic] qlipper-5.1.2/src/qlippernetwork.h:47:10: note: Either there is a missing 'override', or the member function 'QlipperNetwork::readData' can be static. qlipper-5.1.2/src/qlippernetwork.cpp:80:22: note: Either there is a missing 'override', or the member function 'QlipperNetwork::readData' can be static. qlipper-5.1.2/src/qlippernetwork.h:35:5: style: Class 'QlipperNetwork' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] qlipper-5.1.2/src/qlipperitem.cpp:34:14: warning: Member variable 'QlipperItem::m_contentType' is not initialized in the constructor. [uninitMemberVar] qlipper-5.1.2/src/qlipperitem.cpp:34:14: warning: Member variable 'QlipperItem::m_enforceHistory' is not initialized in the constructor. [uninitMemberVar] qlipper-5.1.2/src/qlipperitem.cpp:114:14: warning: Member variable 'QlipperItem::m_enforceHistory' is not initialized in the constructor. [uninitMemberVar] qlipper-5.1.2/src/qlipperitem.cpp:123:14: warning: Member variable 'QlipperItem::m_enforceHistory' is not initialized in the constructor. [uninitMemberVar] qlipper-5.1.2/src/qlippermodel.cpp:238:20: performance:inconclusive: Either there is a missing 'override', or the member function 'QlipperModel::timer_timeout' can be static. [functionStatic] qlipper-5.1.2/src/qlippermodel.h:80:10: note: Either there is a missing 'override', or the member function 'QlipperModel::timer_timeout' can be static. qlipper-5.1.2/src/qlippermodel.cpp:238:20: note: Either there is a missing 'override', or the member function 'QlipperModel::timer_timeout' can be static. qlipper-5.1.2/src/qlipperpreferences.cpp:151:9: style: The scope of the variable 'i' can be reduced. [variableScope] qlipper-5.1.2/src/signalhandler.cpp:18:91: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/signalhandler.cpp:25:116: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/signalhandler.cpp:56:97: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlipperpreferencesdialog.cpp:135:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ExistingFile [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlipperpreferences.cpp:101:61: performance: Function parameter 'list' should be passed by const reference. [passedByValue] qlipper-5.1.2/src/qlipperpreferencesdialog.cpp:158:110: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Normal [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlipperpreferences.cpp:107:5: performance: Range variable 'item' should be declared as const reference. [iterateByValue] qlipper-5.1.2/src/qlipperpreferences.cpp:146:62: performance: Function parameter 'list' should be passed by const reference. [passedByValue] qlipper-5.1.2/src/qlipperpreferences.cpp:156:9: performance: Range variable 'item' should be declared as const reference. [iterateByValue] qlipper-5.1.2/src/qlippersystray.cpp:51:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable qApp [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippersystray.cpp:148:44: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Ok [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippersystray.cpp:155:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Trigger [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlippersystray.cpp:171:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Ok [valueFlowBailoutIncompleteVar] qlipper-5.1.2/src/qlipperpreferencesdialog.cpp:55:5: performance: Range variable 'item' should be declared as const reference. [iterateByValue] diff: head qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:159:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KeyPress [valueFlowBailoutIncompleteVar] head qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:161:20: style: Variable 'key' can be declared as pointer to const [constVariablePointer] 2.18.0 qlipper-5.1.2/qxt/qxtglobalshortcut_x11.cpp:173:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XCB_KEY_PRESS [valueFlowBailoutIncompleteVar] DONE