2025-08-29 17:02 ftp://ftp.de.debian.org/debian/pool/main/x/xserver-xorg-video-neomagic/xserver-xorg-video-neomagic_1.3.1.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: 41 72 elapsed-time: 0.2 0.5 head-timing-info: old-timing-info: head results: xf86-video-neomagic-1.3.1/src/neo_2070.c:168:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_2090.c:203:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_2097.c:255:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_2200.c:261:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_i2c.c:54:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_i2c.c:69:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_i2c.c:85:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_driver.c:57:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] xf86-video-neomagic-1.3.1/src/neo_driver.c:57:2: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] xf86-video-neomagic-1.3.1/src/neo_cursor.c:62:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:79:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:95:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Accel [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:199:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Accel [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:246:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:275:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable byte_reversed [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:294:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_dga.c:76:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_dga.c:165:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_dga.c:281:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DGA_NEED_ROOT [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_shadow.c:23:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_shadow.c:59:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_dga.c:78:38: style: Variable 'newmodes' is assigned a value that is never used. [unreadVariable] xf86-video-neomagic-1.3.1/src/neo_video.c:79:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:203:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:272:75: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ptr [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:337:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Success [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:498:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VGA_GRAPH_INDEX [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:541:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VGA_GRAPH_INDEX [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:586:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BadMatch [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:613:75: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ptr [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:864:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VGA_GRAPH_INDEX [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:919:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable XF86OffscreenImageRec [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:969:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable screens [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:1005:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BadAlloc [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:1061:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Success [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:1072:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ptr [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:1126:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VGA_GRAPH_INDEX [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:1141:74: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ptr [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_video.c:1153:74: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ptr [valueFlowBailoutIncompleteVar] xf86-video-neomagic-1.3.1/src/neo_cursor.c:158:13: style: Variable 'bits' is reassigned a value before the old one has been used. [redundantAssignment] xf86-video-neomagic-1.3.1/src/neo_cursor.c:153:13: note: bits is assigned xf86-video-neomagic-1.3.1/src/neo_cursor.c:158:13: note: bits is overwritten xf86-video-neomagic-1.3.1/src/neo_cursor.c:292:25: style:inconclusive: Function 'NeoCursorInit' argument 1 names different: declaration 'pScrn' definition 'pScreen'. [funcArgNamesDifferent] xf86-video-neomagic-1.3.1/src/neo.h:109:37: note: Function 'NeoCursorInit' argument 1 names different: declaration 'pScrn' definition 'pScreen'. xf86-video-neomagic-1.3.1/src/neo_cursor.c:292:25: note: Function 'NeoCursorInit' argument 1 names different: declaration 'pScrn' definition 'pScreen'. diff: 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1102:13: style: The if condition is the same as the previous if condition [duplicateCondition] xf86-video-neomagic-1.3.1/src/neo_driver.c:1096:13: note: First condition xf86-video-neomagic-1.3.1/src/neo_driver.c:1102:13: note: Second condition 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1108:24: style: int result is assigned to long variable. If the variable is long to avoid loss of information, then you have loss of information. [truncLongCastAssignment] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1184:26: style: int result is assigned to long variable. If the variable is long to avoid loss of information, then you have loss of information. [truncLongCastAssignment] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1339:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1360:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1375:9: style: Parameter 'indices' can be declared as pointer to const. However it seems that 'NEOLoadPalette' is a callback function, if 'indices' is declared with const you might also need to cast function pointer(s). [constParameterCallback] xf86-video-neomagic-1.3.1/src/neo_driver.c:1711:26: note: You might need to cast the function pointer here xf86-video-neomagic-1.3.1/src/neo_driver.c:1375:9: note: Parameter 'indices' can be declared as pointer to const 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1399:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable red [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1411:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1435:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1464:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable RAC_FB [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1638:14: style: Local variable 'ret' shadows outer variable [shadowVariable] xf86-video-neomagic-1.3.1/src/neo_driver.c:1460:9: note: Shadowed declaration xf86-video-neomagic-1.3.1/src/neo_driver.c:1638:14: note: Shadow variable 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1751:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1759:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1821:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1850:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1860:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xf86Screens [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:1963:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable BUS_PCI [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2078:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2099:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VGA_SR_ALL [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2200:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2328:3: style: Consecutive return, break, continue, goto or throw statements are unnecessary. [duplicateBreak] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2419:59: style:inconclusive: Function 'neoRestore' argument 3 names different: declaration 'NeoReg' definition 'restore'. [funcArgNamesDifferent] xf86-video-neomagic-1.3.1/src/neo_driver.c:127:16: note: Function 'neoRestore' argument 3 names different: declaration 'NeoReg' definition 'restore'. xf86-video-neomagic-1.3.1/src/neo_driver.c:2419:59: note: Function 'neoRestore' argument 3 names different: declaration 'NeoReg' definition 'restore'. 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2426:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2471:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2484:5: style: Obsolescent function 'usleep' called. It is recommended to use 'nanosleep' or 'setitimer' instead. [prohibitedusleepCalled] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:2617:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Accel [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:3096:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:3112:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:3132:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:3196:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ConfiguredMonitor [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:460:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:502:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] head xf86-video-neomagic-1.3.1/src/neo_driver.c:57:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] head xf86-video-neomagic-1.3.1/src/neo_driver.c:57:2: error: failed to evaluate #if condition, undefined function-like macro invocation: GET_ABI_MAJOR( ... ) [preprocessorErrorDirective] 2.18.0 xf86-video-neomagic-1.3.1/src/neo_driver.c:629:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NoDepth24Support [valueFlowBailoutIncompleteVar] DONE