2026-08-08 23:32 ftp://ftp.de.debian.org/debian/pool/main/o/open-invaders/open-invaders_0.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 -j96 platform: Linux-6.8.0-111-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.4.0 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0 cppcheck: head 2.21.0 head-info: 4b0c239 (2026-08-08 09:45:12 +0200) count: 123 122 elapsed-time: 0.3 0.1 head-timing-info: old-timing-info: head results: open-invaders-0.3/src/input.cc:66:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable key [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/input.cc:97:6: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable key [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/input.cc:161:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable KEY_MAX [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/main.cc:51:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/sound.cc:39:14: style: The scope of the variable 'hiscore_beaten' can be reduced. [variableScope] open-invaders-0.3/src/main.cc:49:26: style: Parameter 'argv' can be declared as const array [constParameter] open-invaders-0.3/src/collision.cc:60:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable mask [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/collision.cc:75:69: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/ending.cc:199:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/input.cc:55:6: style: The scope of the variable 'result' can be reduced. [variableScope] open-invaders-0.3/src/input.cc:63:10: style: The scope of the variable 'filepath' can be reduced. [variableScope] open-invaders-0.3/src/input.cc:70:9: style: Variable 'result' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/unlock.cc:195:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/unlock.cc:430:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable screen [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:74:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:190:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable binary [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:308:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable binary [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:347:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable binary [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:490:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable binary [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:520:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dumb_exit [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:551:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dead [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:636:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/init.cc:662:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:93:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable x [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:301:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GFX_AUTODETECT [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:369:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:499:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable active [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:521:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable screen [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:550:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable screen [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/graphics.cc:576:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable screen [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:76:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:175:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:261:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:310:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dead [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:328:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dead [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:368:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:477:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable screen [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:520:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable xpos [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:539:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable life [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/logic.cc:576:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable alive [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:21:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:25:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:52:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:105:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:114:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:163:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:204:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:245:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PMASK [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:269:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:298:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MASK_WORD_BITBITS [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:549:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CONST [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/pmask.c:660:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CONST [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/intro.cc:133:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/intro.cc:246:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/intro.cc:1821:62: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SCREEN_W [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/intro.cc:1854:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable x [valueFlowBailoutIncompleteVar] open-invaders-0.3/src/unlock.cc:388:9: style: The scope of the variable 'unlockabletexts' can be reduced. [variableScope] open-invaders-0.3/src/unlock.cc:312:7: style: Local variable 'testtable' shadows outer variable [shadowVariable] open-invaders-0.3/src/unlock.cc:289:6: note: Shadowed variable open-invaders-0.3/src/unlock.cc:312:7: note: Shadow local variable open-invaders-0.3/src/unlock.cc:289:6: style: Variable 'testtable' can be declared as const array [constVariable] open-invaders-0.3/src/unlock.cc:312:7: style: Variable 'testtable' can be declared as const array [constVariable] open-invaders-0.3/src/init.cc:637:3: portability: Returning an integer in a function with pointer return type is not portable. [CastIntegerToAddressAtReturn] open-invaders-0.3/src/init.cc:663:3: portability: Returning an integer in a function with pointer return type is not portable. [CastIntegerToAddressAtReturn] open-invaders-0.3/src/init.cc:321:44: error: Buffer is accessed out of bounds: reinterpret_cast(&unlockables_unlocked[readunlockables]) [bufferAccessOutOfBounds] open-invaders-0.3/src/init.cc:342:9: style: The scope of the variable 'parameter' can be reduced. [variableScope] open-invaders-0.3/src/init.cc:343:6: style: The scope of the variable 'position_of_equals' can be reduced. [variableScope] open-invaders-0.3/src/init.cc:344:6: style: The scope of the variable 'length_of_value' can be reduced. [variableScope] open-invaders-0.3/src/init.cc:346:7: style: The scope of the variable 'verified' can be reduced. [variableScope] open-invaders-0.3/src/init.cc:618:37: performance: Function parameter 'filename' should be passed by const reference. [passedByValue] open-invaders-0.3/src/init.cc:618:59: performance: Function parameter 'defsymbol' should be passed by const reference. [passedByValue] open-invaders-0.3/src/init.cc:644:33: performance: Function parameter 'filename' should be passed by const reference. [passedByValue] open-invaders-0.3/src/init.cc:644:55: performance: Function parameter 'defsymbol' should be passed by const reference. [passedByValue] open-invaders-0.3/src/init.cc:155:9: style: Variable 'failed' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/init.cc:166:9: style: Variable 'failed' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/init.cc:346:15: style: Variable 'verified' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/init.cc:362:14: style: Variable 'verified' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/pmask.c:637:3: style: Assignment of function parameter has no effect outside the function. [uselessAssignmentArg] open-invaders-0.3/src/pmask.c:44:33: style: Condition 'mask->h!=h' is always false [knownConditionTrueFalse] open-invaders-0.3/src/pmask.c:43:10: note: mask->h is assigned 'h' here. open-invaders-0.3/src/pmask.c:44:33: note: Condition 'mask->h!=h' is always false open-invaders-0.3/src/pmask.c:20:41: style: Parameter 'mask' can be declared as pointer to const [constParameterPointer] open-invaders-0.3/src/pmask.c:103:9: style: Variable 'mask' can be declared as pointer to const [constVariablePointer] open-invaders-0.3/src/pmask.c:533:25: style: Variable 'end1' can be declared as pointer to const [constVariablePointer] open-invaders-0.3/src/pmask.c:534:25: style: Variable 'end2' can be declared as pointer to const [constVariablePointer] open-invaders-0.3/src/pmask.c:644:25: style: Variable 'end1' can be declared as pointer to const [constVariablePointer] open-invaders-0.3/src/pmask.c:645:25: style: Variable 'end2' can be declared as pointer to const [constVariablePointer] open-invaders-0.3/src/pmask.c:178:29: warning: Uninitialized variable: tmp [uninitvar] open-invaders-0.3/src/pmask.c:173:41: note: Assuming condition is false open-invaders-0.3/src/pmask.c:178:29: note: Uninitialized variable: tmp open-invaders-0.3/src/pmask.c:219:29: warning: Uninitialized variable: tmp [uninitvar] open-invaders-0.3/src/pmask.c:215:41: note: Assuming condition is false open-invaders-0.3/src/pmask.c:219:29: note: Uninitialized variable: tmp open-invaders-0.3/src/pmask.c:40:35: style: Variable 'error' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/pmask.c:105:12: style: Variable 'words' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/pmask.c:637:5: style: Variable 'a' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/logic.cc:244:6: style: The scope of the variable 'randomenemy_x' can be reduced. [variableScope] open-invaders-0.3/src/logic.cc:244:21: style: The scope of the variable 'randomenemy_y' can be reduced. [variableScope] open-invaders-0.3/src/logic.cc:355:7: style: The scope of the variable 'lightning_white' can be reduced. [variableScope] open-invaders-0.3/src/logic.cc:212:14: style: Local variable 'wavex' shadows outer variable [shadowVariable] open-invaders-0.3/src/logic.cc:206:11: note: Shadowed variable open-invaders-0.3/src/logic.cc:212:14: note: Shadow local variable open-invaders-0.3/src/logic.cc:214:15: style: Local variable 'wavey' shadows outer variable [shadowVariable] open-invaders-0.3/src/logic.cc:208:12: note: Shadowed variable open-invaders-0.3/src/logic.cc:214:15: note: Shadow local variable open-invaders-0.3/src/logic.cc:224:14: style: Local variable 'wavex' shadows outer variable [shadowVariable] open-invaders-0.3/src/logic.cc:206:11: note: Shadowed variable open-invaders-0.3/src/logic.cc:224:14: note: Shadow local variable open-invaders-0.3/src/logic.cc:226:15: style: Local variable 'wavey' shadows outer variable [shadowVariable] open-invaders-0.3/src/logic.cc:208:12: note: Shadowed variable open-invaders-0.3/src/logic.cc:226:15: note: Shadow local variable open-invaders-0.3/src/logic.cc:244:36: style: Local variable 'enemy_count' shadows outer variable [shadowVariable] open-invaders-0.3/src/logic.cc:47:13: note: Shadowed variable open-invaders-0.3/src/logic.cc:244:36: note: Shadow local variable open-invaders-0.3/src/logic.cc:355:22: style: Variable 'lightning_white' is assigned a value that is never used. [unreadVariable] open-invaders-0.3/src/intro.cc:275:7: style: Redundant initialization for 'spike'. The initialized value is overwritten before it is read. [redundantInitialization] open-invaders-0.3/src/intro.cc:190:15: note: spike is initialized open-invaders-0.3/src/intro.cc:275:7: note: spike is overwritten open-invaders-0.3/src/intro.cc:506:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:473:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:506:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:506:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:480:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:506:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:506:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:488:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:506:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:760:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:740:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:760:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:760:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:746:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:760:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:760:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:752:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:760:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1277:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1287:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1294:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1301:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1308:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1315:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1322:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1329:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1336:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1343:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1350:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1357:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1364:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1371:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1378:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1385:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1392:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1399:21: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten open-invaders-0.3/src/intro.cc:1412:17: style: Variable 'keyreleased' is reassigned a value before the old one has been used. [redundantAssignment] open-invaders-0.3/src/intro.cc:1404:20: note: keyreleased is assigned open-invaders-0.3/src/intro.cc:1412:17: note: keyreleased is overwritten diff: head open-invaders-0.3/src/init.cc:321:44: error: Buffer is accessed out of bounds: reinterpret_cast(&unlockables_unlocked[readunlockables]) [bufferAccessOutOfBounds] DONE