2025-06-28 16:25 ftp://ftp.de.debian.org/debian/pool/main/libr/libretro-gambatte/libretro-gambatte_0.5.0+git20160522+dfsg1.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-6.1.0-37-amd64-x86_64-with-glibc2.36 python: 3.11.2 client-version: 1.3.67 compiler: g++ (Debian 12.2.0-14+deb12u1) 12.2.0 cppcheck: head 2.17.0 head-info: b6dd286 (2025-06-27 13:53:34 +0200) count: 227 228 elapsed-time: 36.7 9.0 head-timing-info: old-timing-info: head results: libgambatte/libretro/blipper.c:315:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] libgambatte/src/minkeeper.h:88:10: debug: Failed to instantiate template "Sum". The checking continues anyway. [templateInstantiation] libgambatte/libretro/blipper.c:313:12: portability: Shifting a negative value is technically undefined behaviour [shiftNegativeLHS] libgambatte/libretro/blipper.c:256:55: style:inconclusive: Function 'blipper_create_filter_bank_fixed' argument 1 names different: declaration 'decimation' definition 'phases'. [funcArgNamesDifferent] libgambatte/libretro/blipper.h:119:55: note: Function 'blipper_create_filter_bank_fixed' argument 1 names different: declaration 'decimation' definition 'phases'. libgambatte/libretro/blipper.c:256:55: note: Function 'blipper_create_filter_bank_fixed' argument 1 names different: declaration 'decimation' definition 'phases'. libgambatte/libretro/blipper.c:379:68: style:inconclusive: Function 'blipper_push_samples_fixed' argument 2 names different: declaration 'delta' definition 'data'. [funcArgNamesDifferent] libgambatte/libretro/blipper.h:147:68: note: Function 'blipper_push_samples_fixed' argument 2 names different: declaration 'delta' definition 'data'. libgambatte/libretro/blipper.c:379:68: note: Function 'blipper_push_samples_fixed' argument 2 names different: declaration 'delta' definition 'data'. libgambatte/libretro/blipper.c:413:40: style: Parameter 'blip' can be declared as pointer to const [constParameterPointer] libgambatte/src/sound/channel4.h:59:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/minkeeper.h:152:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable id [valueFlowBailoutIncompleteVar] libgambatte/src/gambatte.cpp:40:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable p_ [valueFlowBailoutIncompleteVar] libgambatte/src/gambatte.cpp:57:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable gbaCgbMode [valueFlowBailoutIncompleteVar] libgambatte/src/gambatte.cpp:69:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GBA_CGB [valueFlowBailoutIncompleteVar] libgambatte/src/gambatte.cpp:81:60: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FORCE_DMG [valueFlowBailoutIncompleteVar] libgambatte/src/minkeeper.h:55:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable id [valueFlowBailoutIncompleteVar] libgambatte/src/minkeeper.h:73:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable id [valueFlowBailoutIncompleteVar] libgambatte/src/minkeeper.h:101:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable id [valueFlowBailoutIncompleteVar] libgambatte/src/video.h:164:18: style:inconclusive: Technically the member function 'gambatte::LCD::EventTimes::flagIrq' can be const. [functionConst] libgambatte/src/video.h:165:18: style:inconclusive: Technically the member function 'gambatte::LCD::EventTimes::flagHdmaReq' can be const. [functionConst] libgambatte/src/minkeeper.h:93:4: style: Class 'MinKeeper < intevent_last + 1 >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] libgambatte/src/minkeeper.h:93:4: style: Class 'MinKeeper < NUM_EVENTS >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] libgambatte/src/minkeeper.h:93:4: style: Class 'MinKeeper < NUM_MEM_EVENTS >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] libgambatte/src/sound/duty_unit.h:31:15: style: The function 'event' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/sound/sound_unit.h:29:15: note: Virtual function in base class libgambatte/src/sound/duty_unit.h:31:15: note: Function in derived class libgambatte/src/sound/duty_unit.h:32:15: style: The function 'resetCounters' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/sound/sound_unit.h:31:15: note: Virtual function in base class libgambatte/src/sound/duty_unit.h:32:15: note: Function in derived class libgambatte/src/sound/duty_unit.h:64:15: style: The function 'operator()' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/sound/master_disabler.h:28:15: note: Virtual function in base class libgambatte/src/sound/duty_unit.h:64:15: note: Function in derived class libgambatte/src/sound/envelope_unit.h:35:7: style: The function 'event' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/sound/sound_unit.h:29:15: note: Virtual function in base class libgambatte/src/sound/envelope_unit.h:35:7: note: Function in derived class libgambatte/src/sound/length_counter.h:32:15: style: The function 'event' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/sound/sound_unit.h:29:15: note: Virtual function in base class libgambatte/src/sound/length_counter.h:32:15: note: Function in derived class libgambatte/src/sound/static_output_tester.h:30:7: style: The function 'operator()' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/sound/envelope_unit.h:31:16: note: Virtual function in base class libgambatte/src/sound/static_output_tester.h:30:7: note: Function in derived class libgambatte/src/interrupter.cpp:69:19: style:inconclusive: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. [functionConst] libgambatte/src/interrupter.h:46:7: note: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. libgambatte/src/interrupter.cpp:69:19: note: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. libgambatte/src/interrupter.cpp:30:76: style:inconclusive: Function 'interrupt' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/interrupter.h:38:58: note: Function 'interrupt' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/interrupter.cpp:30:76: note: Function 'interrupt' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/interrupter.cpp:69:69: style:inconclusive: Function 'applyVblankCheats' argument 2 names different: declaration 'mem' definition 'memory'. [funcArgNamesDifferent] libgambatte/src/interrupter.h:46:51: note: Function 'applyVblankCheats' argument 2 names different: declaration 'mem' definition 'memory'. libgambatte/src/interrupter.cpp:69:69: note: Function 'applyVblankCheats' argument 2 names different: declaration 'mem' definition 'memory'. libgambatte/src/gambatte-memory.cpp:100:37: style:inconclusive: Boolean expression 'isCgb()' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] libgambatte/src/gambatte-memory.cpp:182:14: style:inconclusive: Boolean expression 'lcden' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/gambatte-memory.cpp:310:23: style:inconclusive: Boolean expression 'isCgb()' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] libgambatte/src/gambatte-memory.cpp:28:9: warning: Member variable 'Memory::ioamhram_' is not initialized in the constructor. [uninitMemberVar] libgambatte/src/gambatte-memory.cpp:1042:11: style: Condition 'ffp<0' is always false [knownConditionTrueFalse] libgambatte/src/gambatte-memory.cpp:1040:25: note: Assuming that condition 'p-0xFF80u>=0x7Fu' is not redundant libgambatte/src/gambatte-memory.cpp:1041:28: note: Assignment 'ffp=long(p)-0xFF00', assigned value is greater than 254 libgambatte/src/gambatte-memory.cpp:1042:11: note: Condition 'ffp<0' is always false libgambatte/src/gambatte-memory.cpp:1043:57: style: Condition 'p<0xFEA0' is always false [knownConditionTrueFalse] libgambatte/src/gambatte-memory.cpp:1040:25: note: Assuming that condition 'p-0xFF80u>=0x7Fu' is not redundant libgambatte/src/gambatte-memory.cpp:1043:57: note: Condition 'p<0xFEA0' is always false libgambatte/src/gambatte-memory.cpp:157:43: style:inconclusive: Function 'event' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:98:36: note: Function 'event' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:157:43: note: Function 'event' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:307:42: style:inconclusive: Function 'stop' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:58:35: note: Function 'stop' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:307:42: note: Function 'stop' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:341:51: style:inconclusive: Function 'resetCounters' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:99:44: note: Function 'resetCounters' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:341:51: note: Function 'resetCounters' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:392:47: style:inconclusive: Function 'updateOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:139:34: note: Function 'updateOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:392:47: note: Function 'updateOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:445:40: style:inconclusive: Function 'startOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:140:33: note: Function 'startOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:445:40: note: Function 'startOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:449:38: style:inconclusive: Function 'endOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:141:31: note: Function 'endOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:449:38: note: Function 'endOamDma' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:455:75: style:inconclusive: Function 'nontrivial_ff_read' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:143:56: note: Function 'nontrivial_ff_read' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:455:75: note: Function 'nontrivial_ff_read' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:549:72: style:inconclusive: Function 'nontrivial_read' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:144:53: note: Function 'nontrivial_read' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:549:72: note: Function 'nontrivial_read' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:589:87: style:inconclusive: Function 'nontrivial_ff_write' argument 3 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:145:68: note: Function 'nontrivial_ff_write' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:589:87: note: Function 'nontrivial_ff_write' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:1015:90: style:inconclusive: Function 'nontrivial_write' argument 3 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/gambatte-memory.h:146:65: note: Function 'nontrivial_write' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/gambatte-memory.cpp:1015:90: note: Function 'nontrivial_write' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/mem/cartridge_libretro.cpp:50:24: style:inconclusive: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. [functionConst] libgambatte/src/mem/cartridge.h:138:19: note: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. libgambatte/src/mem/cartridge_libretro.cpp:50:24: note: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. libgambatte/src/mem/cartridge_libretro.cpp:67:17: warning: Found function call inside sizeof(). [sizeofFunctionCall] libgambatte/src/gambatte-memory.cpp:524:76: style: struct member 'Area::pad' is never used. [unusedStructMember] libgambatte/src/gambatte-memory.cpp:423:23: style: Variable 'zeroMem' is not assigned a value. [unassignedVariable] libgambatte/src/mem/memptrs.h:134:25: style:inconclusive: Member variable 'MemPtrs::romdata_' is in the wrong place in the initializer list. [initializerList] libgambatte/src/mem/memptrs.cpp:29:9: note: Member variable 'MemPtrs::romdata_' is in the wrong place in the initializer list. libgambatte/src/mem/memptrs.h:134:25: note: Member variable 'MemPtrs::romdata_' is in the wrong place in the initializer list. libgambatte/src/mem/memptrs.cpp:88:44: style:inconclusive: Function 'setRambank' argument 1 names different: declaration 'ramFlags' definition 'flags'. [funcArgNamesDifferent] libgambatte/src/mem/memptrs.h:128:35: note: Function 'setRambank' argument 1 names different: declaration 'ramFlags' definition 'flags'. libgambatte/src/mem/memptrs.cpp:88:44: note: Function 'setRambank' argument 1 names different: declaration 'ramFlags' definition 'flags'. libgambatte/src/mem/cartridge.cpp:46:23: style: The function 'isAddressWithinAreaRombankCanBeMappedTo' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:38:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:46:23: note: Function in derived class libgambatte/src/mem/cartridge.cpp:59:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:59:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:65:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:65:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:68:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:68:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:92:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:92:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:118:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:118:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:124:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:124:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:157:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:157:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:179:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:179:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:184:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:184:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:191:20: style: The function 'isAddressWithinAreaRombankCanBeMappedTo' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:38:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:191:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:206:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:206:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:218:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:218:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:222:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:222:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:253:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:253:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:273:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:273:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:278:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:278:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:310:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:310:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:331:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:331:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:337:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:337:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:365:20: style: The function 'romWrite' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:35:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:365:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:384:20: style: The function 'saveState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:36:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:384:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:389:20: style: The function 'loadState' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] libgambatte/src/mem/cartridge.h:37:23: note: Virtual function in base class libgambatte/src/mem/cartridge.cpp:389:20: note: Function in derived class libgambatte/src/mem/cartridge.cpp:431:37: style: Condition 'static_cast(0x100)' is always false [knownConditionTrueFalse] libgambatte/src/mem/cartridge.cpp:581:27: style: Condition 'cmp>0xFF' is always true [knownConditionTrueFalse] libgambatte/src/mem/cartridge.cpp:570:25: note: Assignment 'cmp=0xFFFF', assigned value is 65535 libgambatte/src/mem/cartridge.cpp:581:27: note: Condition 'cmp>0xFF' is always true libgambatte/src/mem/cartridge.cpp:606:72: style: Condition 'code=codes.substr(pos,codes.find(';',pos)-pos),true' is always true [knownConditionTrueFalse] libgambatte/src/mem/cartridge.cpp:450:26: style: C-style pointer casting [cstyleCast] libgambatte/src/mem/cartridge.cpp:448:39: style:inconclusive: Function 'loadROM' argument 1 names different: declaration 'romdata' definition 'data'. [funcArgNamesDifferent] libgambatte/src/mem/cartridge.h:133:34: note: Function 'loadROM' argument 1 names different: declaration 'romdata' definition 'data'. libgambatte/src/mem/cartridge.cpp:448:39: note: Function 'loadROM' argument 1 names different: declaration 'romdata' definition 'data'. libgambatte/src/mem/cartridge.cpp:448:95: style:inconclusive: Function 'loadROM' argument 4 names different: declaration 'multicartCompat' definition 'multiCartCompat'. [funcArgNamesDifferent] libgambatte/src/mem/cartridge.h:133:81: note: Function 'loadROM' argument 4 names different: declaration 'multicartCompat' definition 'multiCartCompat'. libgambatte/src/mem/cartridge.cpp:448:95: note: Function 'loadROM' argument 4 names different: declaration 'multicartCompat' definition 'multiCartCompat'. libgambatte/src/mem/cartridge.cpp:450:16: style: Local variable 'romdata' shadows outer function [shadowFunction] libgambatte/src/mem/cartridge.h:65:26: note: Shadowed declaration libgambatte/src/mem/cartridge.cpp:450:16: note: Shadow variable libgambatte/src/mem/cartridge.cpp:454:16: style: Local variable 'rambanks' shadows outer function [shadowFunction] libgambatte/src/mem/cartridge.cpp:34:27: note: Shadowed declaration libgambatte/src/mem/cartridge.cpp:454:16: note: Shadow variable libgambatte/src/mem/cartridge.cpp:455:16: style: Local variable 'rombanks' shadows outer function [shadowFunction] libgambatte/src/mem/cartridge.cpp:39:27: note: Shadowed declaration libgambatte/src/mem/cartridge.cpp:455:16: note: Shadow variable libgambatte/src/sound/channel1.cpp:84:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/channel1.cpp:91:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/channel1.h:74:41: style:inconclusive: Member variable 'Channel1::staticOutputTest_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel1.cpp:109:3: note: Member variable 'Channel1::staticOutputTest_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel1.h:74:41: note: Member variable 'Channel1::staticOutputTest_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel1.h:75:21: style:inconclusive: Member variable 'Channel1::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel1.cpp:110:3: note: Member variable 'Channel1::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel1.h:75:21: note: Member variable 'Channel1::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel1.h:75:21: style:inconclusive: Member variable 'Channel1::disableMaster_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel1.cpp:110:3: note: Member variable 'Channel1::disableMaster_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel1.h:75:21: note: Member variable 'Channel1::disableMaster_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel1.cpp:74:55: style:inconclusive: Function 'nr4Init' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/sound/channel1.h:55:30: note: Function 'nr4Init' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/sound/channel1.cpp:74:55: note: Function 'nr4Init' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/sound/channel2.h:49:41: style:inconclusive: Member variable 'Channel2::staticOutputTest_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel2.cpp:26:3: note: Member variable 'Channel2::staticOutputTest_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel2.h:49:41: note: Member variable 'Channel2::staticOutputTest_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel2.h:50:21: style:inconclusive: Member variable 'Channel2::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel2.cpp:27:3: note: Member variable 'Channel2::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel2.h:50:21: note: Member variable 'Channel2::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel2.h:50:21: style:inconclusive: Member variable 'Channel2::disableMaster_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel2.cpp:27:3: note: Member variable 'Channel2::disableMaster_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel2.h:50:21: note: Member variable 'Channel2::disableMaster_' uses an uninitialized argument 'dutyUnit_' due to the order of declarations. libgambatte/src/sound/channel4.cpp:113:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_max [valueFlowBailoutIncompleteVar] libgambatte/src/sound/duty_unit.cpp:61:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/duty_unit.cpp:114:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/duty_unit.cpp:139:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/channel4.h:82:37: style:inconclusive: Member variable 'Channel4::staticOutputTest_' uses an uninitialized argument 'lfsr_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel4.cpp:131:3: note: Member variable 'Channel4::staticOutputTest_' uses an uninitialized argument 'lfsr_' due to the order of declarations. libgambatte/src/sound/channel4.h:82:37: note: Member variable 'Channel4::staticOutputTest_' uses an uninitialized argument 'lfsr_' due to the order of declarations. libgambatte/src/sound/channel4.h:83:20: style:inconclusive: Member variable 'Channel4::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel4.cpp:132:3: note: Member variable 'Channel4::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel4.h:83:20: note: Member variable 'Channel4::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel4.h:83:20: style:inconclusive: Member variable 'Channel4::disableMaster_' uses an uninitialized argument 'lfsr_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel4.cpp:132:3: note: Member variable 'Channel4::disableMaster_' uses an uninitialized argument 'lfsr_' due to the order of declarations. libgambatte/src/sound/channel4.h:83:20: note: Member variable 'Channel4::disableMaster_' uses an uninitialized argument 'lfsr_' due to the order of declarations. libgambatte/src/sound/channel3.cpp:30:11: warning: Member variable 'Channel3::waveRam_' is not initialized in the constructor. [uninitMemberVar] libgambatte/src/sound/channel3.h:84:20: style:inconclusive: Member variable 'Channel3::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel3.cpp:31:3: note: Member variable 'Channel3::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel3.h:84:20: note: Member variable 'Channel3::disableMaster_' uses an uninitialized argument 'master_' due to the order of declarations. libgambatte/src/sound/channel3.h:84:20: style:inconclusive: Member variable 'Channel3::disableMaster_' uses an uninitialized argument 'waveCounter_' due to the order of declarations. [initializerList] libgambatte/src/sound/channel3.cpp:31:3: note: Member variable 'Channel3::disableMaster_' uses an uninitialized argument 'waveCounter_' due to the order of declarations. libgambatte/src/sound/channel3.h:84:20: note: Member variable 'Channel3::disableMaster_' uses an uninitialized argument 'waveCounter_' due to the order of declarations. libgambatte/src/sound/channel4.cpp:32:2: style: int result is returned as long value. If the return value is long to avoid loss of information, then you have loss of information. [truncLongCastReturn] libgambatte/src/sound/envelope_unit.cpp:34:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/envelope_unit.cpp:65:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/envelope_unit.cpp:71:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/length_counter.cpp:34:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/length_counter.cpp:43:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/length_counter.cpp:47:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable counter_disabled [valueFlowBailoutIncompleteVar] libgambatte/src/sound/envelope_unit.cpp:84:48: style:inconclusive: Function 'nr4Init' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/sound/envelope_unit.h:39:29: note: Function 'nr4Init' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/sound/envelope_unit.cpp:84:48: note: Function 'nr4Init' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/sound/length_counter.cpp:25:71: style:inconclusive: Function 'LengthCounter' argument 2 names different: declaration 'lengthMask' definition 'mask'. [funcArgNamesDifferent] libgambatte/src/sound/length_counter.h:31:51: note: Function 'LengthCounter' argument 2 names different: declaration 'lengthMask' definition 'mask'. libgambatte/src/sound/length_counter.cpp:25:71: note: Function 'LengthCounter' argument 2 names different: declaration 'lengthMask' definition 'mask'. libgambatte/src/tima.cpp:101:35: style:inconclusive: Function 'setTima' argument 1 names different: declaration 'tima' definition 'data'. [funcArgNamesDifferent] libgambatte/src/tima.h:43:24: note: Function 'setTima' argument 1 names different: declaration 'tima' definition 'data'. libgambatte/src/tima.cpp:101:35: note: Function 'setTima' argument 1 names different: declaration 'tima' definition 'data'. libgambatte/src/tima.cpp:115:34: style:inconclusive: Function 'setTma' argument 1 names different: declaration 'tma' definition 'data'. [funcArgNamesDifferent] libgambatte/src/tima.h:44:23: note: Function 'setTma' argument 1 names different: declaration 'tma' definition 'data'. libgambatte/src/tima.cpp:115:34: note: Function 'setTma' argument 1 names different: declaration 'tma' definition 'data'. libgambatte/src/tima.cpp:124:34: style:inconclusive: Function 'setTac' argument 1 names different: declaration 'tac' definition 'data'. [funcArgNamesDifferent] libgambatte/src/tima.h:45:23: note: Function 'setTac' argument 1 names different: declaration 'tac' definition 'data'. libgambatte/src/tima.cpp:124:34: note: Function 'setTac' argument 1 names different: declaration 'tac' definition 'data'. libgambatte/src/video/ly_counter.cpp:42:86: style:inconclusive: Function 'nextLineCycle' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video/ly_counter.h:42:64: note: Function 'nextLineCycle' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video/ly_counter.cpp:42:86: note: Function 'nextLineCycle' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video/ly_counter.cpp:50:93: style:inconclusive: Function 'nextFrameCycle' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video/ly_counter.h:43:71: note: Function 'nextFrameCycle' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video/ly_counter.cpp:50:93: note: Function 'nextFrameCycle' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/libretro/libretro.cpp:54:80: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable snes [valueFlowBailoutIncompleteVar] libgambatte/libretro/libretro.cpp:98:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable uint_least32_t [valueFlowBailoutIncompleteVar] libgambatte/libretro/libretro.cpp:225:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable npos [valueFlowBailoutIncompleteVar] libgambatte/libretro/libretro.cpp:237:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable npos [valueFlowBailoutIncompleteVar] libgambatte/libretro/libretro.cpp:309:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable npos [valueFlowBailoutIncompleteVar] libgambatte/libretro/libretro.cpp:497:60: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FORCE_DMG [valueFlowBailoutIncompleteVar] libgambatte/src/video/lyc_irq.cpp:42:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable disabled_time [valueFlowBailoutIncompleteVar] libgambatte/src/video.cpp:123:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUM_MEM_EVENTS [valueFlowBailoutIncompleteVar] libgambatte/src/video.cpp:160:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUM_MEM_EVENTS [valueFlowBailoutIncompleteVar] libgambatte/src/video.cpp:414:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NUM_MEM_EVENTS [valueFlowBailoutIncompleteVar] libgambatte/src/video/next_m0_time.cpp:4:57: style:inconclusive: Function 'predictNextM0Time' argument 1 names different: declaration 'v' definition 'ppu'. [funcArgNamesDifferent] libgambatte/src/video/next_m0_time.h:9:42: note: Function 'predictNextM0Time' argument 1 names different: declaration 'v' definition 'ppu'. libgambatte/src/video/next_m0_time.cpp:4:57: note: Function 'predictNextM0Time' argument 1 names different: declaration 'v' definition 'ppu'. libgambatte/libretro/libretro.cpp:126:16: style: C-style pointer casting [cstyleCast] libgambatte/libretro/libretro.cpp:159:40: style: C-style pointer casting [cstyleCast] libgambatte/libretro/libretro.cpp:505:32: style: C-style pointer casting [cstyleCast] libgambatte/libretro/libretro.cpp:102:11: style: The scope of the variable 'sample_rate' can be reduced. [variableScope] libgambatte/libretro/libretro.cpp:451:52: style:inconclusive: Function 'retro_load_game' argument 1 names different: declaration 'game' definition 'info'. [funcArgNamesDifferent] libgambatte/libretro/libretro.h:2053:62: note: Function 'retro_load_game' argument 1 names different: declaration 'game' definition 'info'. libgambatte/libretro/libretro.cpp:451:52: note: Function 'retro_load_game' argument 1 names different: declaration 'game' definition 'info'. libgambatte/libretro/libretro.cpp:618:32: style: Local variable 'u32' shadows outer variable [shadowVariable] libgambatte/libretro/libretro.cpp:618:32: note: Shadowed declaration libgambatte/libretro/libretro.cpp:618:32: note: Shadow variable libgambatte/libretro/libretro.cpp:619:15: style: Local variable 'i16' shadows outer variable [shadowVariable] libgambatte/libretro/libretro.cpp:619:15: note: Shadowed declaration libgambatte/libretro/libretro.cpp:619:15: note: Shadow variable libgambatte/libretro/libretro.cpp:248:42: performance: Function parameter 's1' should be passed by const reference. [passedByValue] libgambatte/libretro/libretro.cpp:248:64: performance: Function parameter 'prefix' should be passed by const reference. [passedByValue] libgambatte/libretro/libretro.cpp:428:21: style: Variable 'rgb32' is assigned a value that is never used. [unreadVariable] libgambatte/src/statesaver.cpp:51:12: performance:inconclusive: Technically the member function 'omemstream::fail' can be static (but you may consider moving to unnamed namespace). [functionStatic] libgambatte/src/statesaver.cpp:52:12: performance:inconclusive: Technically the member function 'omemstream::good' can be static (but you may consider moving to unnamed namespace). [functionStatic] libgambatte/src/statesaver.cpp:97:12: performance:inconclusive: Technically the member function 'imemstream::fail' can be static (but you may consider moving to unnamed namespace). [functionStatic] libgambatte/src/statesaver.cpp:98:12: performance:inconclusive: Technically the member function 'imemstream::good' can be static (but you may consider moving to unnamed namespace). [functionStatic] libgambatte/src/statesaver.cpp:30:7: style: Class 'omemstream' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] libgambatte/src/statesaver.cpp:62:7: style: Class 'imemstream' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] libgambatte/src/statesaver.cpp:236:32: style: Condition 'static_cast(0x100)' is always false [knownConditionTrueFalse] libgambatte/src/video/sprite_mapper.cpp:196:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable disabled_time [valueFlowBailoutIncompleteVar] libgambatte/src/video/sprite_mapper.cpp:108:43: style:inconclusive: Boolean expression 'szbuf_[pos>>1]' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] libgambatte/src/video/sprite_mapper.cpp:108:51: style:inconclusive: Boolean expression 'largeSpritesSrc_' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/video/sprite_mapper.cpp:142:15: warning: Member variable 'SpriteMapper::spritemap_' is not initialized in the constructor. [uninitMemberVar] libgambatte/src/video/sprite_mapper.cpp:156:20: style:inconclusive: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. [functionConst] libgambatte/src/video/sprite_mapper.h:115:7: note: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. libgambatte/src/video/sprite_mapper.cpp:156:20: note: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. libgambatte/src/video/sprite_mapper.cpp:171:25: style: Variable 'nend' can be declared as pointer to const [constVariablePointer] libgambatte/src/video.h:180:11: style:inconclusive: Member variable 'LCD::ppu_' uses an uninitialized argument 'nextM0Time_' due to the order of declarations. [initializerList] libgambatte/src/video_libretro.cpp:46:7: note: Member variable 'LCD::ppu_' uses an uninitialized argument 'nextM0Time_' due to the order of declarations. libgambatte/src/video.h:180:11: note: Member variable 'LCD::ppu_' uses an uninitialized argument 'nextM0Time_' due to the order of declarations. libgambatte/src/video_libretro.cpp:118:23: style:inconclusive: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. [functionConst] libgambatte/src/video.h:141:21: note: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. libgambatte/src/video_libretro.cpp:118:23: note: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. libgambatte/src/video_libretro.cpp:39:38: style:inconclusive: Function 'setColorCorrection' argument 1 names different: declaration 'colorCorrection' definition 'colorCorrection_'. [funcArgNamesDifferent] libgambatte/src/video.h:140:36: note: Function 'setColorCorrection' argument 1 names different: declaration 'colorCorrection' definition 'colorCorrection_'. libgambatte/src/video_libretro.cpp:39:38: note: Function 'setColorCorrection' argument 1 names different: declaration 'colorCorrection' definition 'colorCorrection_'. libgambatte/src/video_libretro.cpp:45:75: style:inconclusive: Function 'LCD' argument 2 names different: declaration 'vram_in' definition 'vram'. [funcArgNamesDifferent] libgambatte/src/video.h:46:61: note: Function 'LCD' argument 2 names different: declaration 'vram_in' definition 'vram'. libgambatte/src/video_libretro.cpp:45:75: note: Function 'LCD' argument 2 names different: declaration 'vram_in' definition 'vram'. libgambatte/src/video_libretro.cpp:107:68: style:inconclusive: Function 'updateScreen' argument 2 names different: declaration 'cc' definition 'cycleCounter'. [funcArgNamesDifferent] libgambatte/src/video.h:90:54: note: Function 'updateScreen' argument 2 names different: declaration 'cc' definition 'cycleCounter'. libgambatte/src/video_libretro.cpp:107:68: note: Function 'updateScreen' argument 2 names different: declaration 'cc' definition 'cycleCounter'. libgambatte/src/cpu.h:87:9: style:inconclusive: Member variable 'CPU::mem_' uses an uninitialized argument 'sp' due to the order of declarations. [initializerList] libgambatte/src/cpu.cpp:26:3: note: Member variable 'CPU::mem_' uses an uninitialized argument 'sp' due to the order of declarations. libgambatte/src/cpu.h:87:9: note: Member variable 'CPU::mem_' uses an uninitialized argument 'sp' due to the order of declarations. libgambatte/src/cpu.h:87:9: style:inconclusive: Member variable 'CPU::mem_' uses an uninitialized argument 'pc_' due to the order of declarations. [initializerList] libgambatte/src/cpu.cpp:26:3: note: Member variable 'CPU::mem_' uses an uninitialized argument 'pc_' due to the order of declarations. libgambatte/src/cpu.h:87:9: note: Member variable 'CPU::mem_' uses an uninitialized argument 'pc_' due to the order of declarations. libgambatte/src/cpu.cpp:501:19: style: Local variable 'cycles' shadows outer argument [shadowArgument] libgambatte/src/cpu.cpp:489:39: note: Shadowed declaration libgambatte/src/cpu.cpp:501:19: note: Shadow variable libgambatte/src/cpu.cpp:596:20: style: Local variable 'cycles' shadows outer argument [shadowArgument] libgambatte/src/cpu.cpp:489:39: note: Shadowed declaration libgambatte/src/cpu.cpp:596:20: note: Shadow variable libgambatte/src/cpu.cpp:1010:21: style: Local variable 'cycles' shadows outer argument [shadowArgument] libgambatte/src/cpu.cpp:489:39: note: Shadowed declaration libgambatte/src/cpu.cpp:1010:21: note: Shadow variable libgambatte/src/video.cpp:148:39: style:inconclusive: Function 'resetCc' argument 1 names different: declaration 'oldCC' definition 'oldCc'. [funcArgNamesDifferent] libgambatte/src/video.h:91:34: note: Function 'resetCc' argument 1 names different: declaration 'oldCC' definition 'oldCc'. libgambatte/src/video.cpp:148:39: note: Function 'resetCc' argument 1 names different: declaration 'oldCC' definition 'oldCc'. libgambatte/src/video.cpp:249:46: style:inconclusive: Function 'vramAccessible' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:93:41: note: Function 'vramAccessible' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:249:46: note: Function 'vramAccessible' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:259:46: style:inconclusive: Function 'cgbpAccessible' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:204:41: note: Function 'cgbpAccessible' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:259:46: note: Function 'cgbpAccessible' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:269:87: style:inconclusive: Function 'doCgbBgColorChange' argument 3 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:207:76: note: Function 'doCgbBgColorChange' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:269:87: note: Function 'doCgbBgColorChange' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:278:87: style:inconclusive: Function 'doCgbSpColorChange' argument 3 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:208:76: note: Function 'doCgbSpColorChange' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:278:87: note: Function 'doCgbSpColorChange' argument 3 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:287:43: style:inconclusive: Function 'oamReadable' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:94:38: note: Function 'oamReadable' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:287:43: note: Function 'oamReadable' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:301:43: style:inconclusive: Function 'oamWritable' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:95:38: note: Function 'oamWritable' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:301:43: note: Function 'oamWritable' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:338:65: style:inconclusive: Function 'wyChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:97:54: note: Function 'wyChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:338:65: note: Function 'wyChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:365:41: style:inconclusive: Function 'oamChange' argument 1 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:98:36: note: Function 'oamChange' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:365:41: note: Function 'oamChange' argument 1 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:373:76: style:inconclusive: Function 'oamChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:99:65: note: Function 'oamChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:373:76: note: Function 'oamChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:381:63: style:inconclusive: Function 'lcdcChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:127:52: note: Function 'lcdcChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:381:63: note: Function 'lcdcChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:448:66: style:inconclusive: Function 'lcdstatChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:128:55: note: Function 'lcdstatChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:448:66: note: Function 'lcdstatChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:520:65: style:inconclusive: Function 'lycRegChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:129:54: note: Function 'lycRegChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:520:65: note: Function 'lycRegChange' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:570:66: style:inconclusive: Function 'getStat' argument 2 names different: declaration 'cycleCounter' definition 'cc'. [funcArgNamesDifferent] libgambatte/src/video.h:105:55: note: Function 'getStat' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video.cpp:570:66: note: Function 'getStat' argument 2 names different: declaration 'cycleCounter' definition 'cc'. libgambatte/src/video/ppu.cpp:129:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:143:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:247:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:833:65: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:856:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:914:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:924:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:999:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:1503:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable start [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:1513:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable start [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:1530:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:1647:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f1_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:1681:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:1702:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable f0_ [valueFlowBailoutIncompleteVar] libgambatte/src/video/ppu.cpp:803:22: style:inconclusive: Boolean expression 'p.cgb' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/video/ppu.cpp:1099:22: style:inconclusive: Boolean expression 'p.cgb' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/video/ppu.cpp:1208:20: style:inconclusive: Boolean expression 'p.cgb' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/video/ppu.cpp:1278:22: style:inconclusive: Boolean expression 'p.cgb' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/video/ppu.cpp:1329:20: style:inconclusive: Boolean expression 'p.cgb' is used in bitwise operation. Did you mean '||'? [bitwiseOnBoolean] libgambatte/src/video/ppu.cpp:1596:25: style:inconclusive: Boolean expression 'p_.cgb' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] libgambatte/src/video/ppu.h:74:15: style:inconclusive: Member variable 'PPUPriv::spriteMapper' uses an uninitialized argument 'lyCounter' due to the order of declarations. [initializerList] libgambatte/src/video/ppu.cpp:1443:3: note: Member variable 'PPUPriv::spriteMapper' uses an uninitialized argument 'lyCounter' due to the order of declarations. libgambatte/src/video/ppu.h:74:15: note: Member variable 'PPUPriv::spriteMapper' uses an uninitialized argument 'lyCounter' due to the order of declarations. libgambatte/src/video/ppu.cpp:1278:22: warning: Result of operator '|' is always true if one operand is non-zero. Did you intend to use '&'? [badBitmaskCheck] libgambatte/src/video/ppu.cpp:1246:66: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:72:2: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1246:66: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1249:66: style:inconclusive: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:73:2: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1249:66: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1252:66: style:inconclusive: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:74:2: note: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1252:66: note: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1255:66: style:inconclusive: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:75:2: note: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1255:66: note: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1258:66: style:inconclusive: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:76:2: note: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1258:66: note: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1261:66: style:inconclusive: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:77:2: note: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1261:66: note: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1302:66: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:88:2: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1302:66: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1308:66: style:inconclusive: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:89:2: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1308:66: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1311:66: style:inconclusive: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:90:2: note: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1311:66: note: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1314:66: style:inconclusive: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:91:2: note: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1314:66: note: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1317:66: style:inconclusive: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:92:2: note: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1317:66: note: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1320:66: style:inconclusive: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:93:2: note: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1320:66: note: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1338:66: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:80:2: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1338:66: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1341:66: style:inconclusive: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:81:2: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1341:66: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1344:66: style:inconclusive: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:82:2: note: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1344:66: note: Function 'predictCyclesUntilXpos_f2' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1347:66: style:inconclusive: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:83:2: note: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1347:66: note: Function 'predictCyclesUntilXpos_f3' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1350:66: style:inconclusive: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:84:2: note: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1350:66: note: Function 'predictCyclesUntilXpos_f4' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1353:66: style:inconclusive: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:85:2: note: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1353:66: note: Function 'predictCyclesUntilXpos_f5' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1374:66: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:69:21: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1374:66: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1379:66: style:inconclusive: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:69:41: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1379:66: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1387:31: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 3 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:1127:48: note: Function 'predictCyclesUntilXpos_f0' argument 3 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1387:31: note: Function 'predictCyclesUntilXpos_f0' argument 3 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1396:66: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:67:23: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1396:66: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1411:66: style:inconclusive: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:68:43: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1411:66: note: Function 'predictCyclesUntilXpos_f1' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1416:31: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 3 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:1132:48: note: Function 'predictCyclesUntilXpos_f0' argument 3 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1416:31: note: Function 'predictCyclesUntilXpos_f0' argument 3 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1424:66: style:inconclusive: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. [funcArgNamesDifferent] libgambatte/src/video/ppu.cpp:68:23: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1424:66: note: Function 'predictCyclesUntilXpos_f0' argument 2 names different: declaration 'targetxpos' definition 'targetx'. libgambatte/src/video/ppu.cpp:1593:38: style:inconclusive: Function 'loadState' argument 1 names different: declaration 'state' definition 'ss'. [funcArgNamesDifferent] libgambatte/src/video/ppu.h:119:34: note: Function 'loadState' argument 1 names different: declaration 'state' definition 'ss'. libgambatte/src/video/ppu.cpp:1593:38: note: Function 'loadState' argument 1 names different: declaration 'state' definition 'ss'. libgambatte/src/video/ppu.cpp:325:25: style: Variable 'dstend' can be declared as pointer to const [constVariablePointer] libgambatte/src/video/ppu.cpp:508:25: style: Variable 'dstend' can be declared as pointer to const [constVariablePointer] libgambatte/src/video/ppu.cpp:155:27: error: Signed integer overflow for expression '-(p.nattrib>>6&1)'. [integerOverflow] libgambatte/src/video/ppu.cpp:166:27: error: Signed integer overflow for expression '-(p.nattrib>>6&1)'. [integerOverflow] libgambatte/src/initstate.cpp:1174:20: style:inconclusive: Boolean expression 'cgb' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] diff: head libgambatte/libretro/libretro.cpp:505:32: style: C-style pointer casting [cstyleCast] 2.17.0 libgambatte/libretro/libretro.cpp:505:33: style: C-style pointer casting [cstyleCast] head libgambatte/src/interrupter.cpp:69:19: style:inconclusive: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. [functionConst] libgambatte/src/interrupter.h:46:7: note: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. libgambatte/src/interrupter.cpp:69:19: note: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. 2.17.0 libgambatte/src/interrupter.h:46:7: style:inconclusive: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. [functionConst] libgambatte/src/interrupter.cpp:69:19: note: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. libgambatte/src/interrupter.h:46:7: note: Technically the member function 'gambatte::Interrupter::applyVblankCheats' can be const. 2.17.0 libgambatte/src/mem/cartridge.h:138:19: style:inconclusive: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. [functionConst] libgambatte/src/mem/cartridge_libretro.cpp:50:24: note: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. libgambatte/src/mem/cartridge.h:138:19: note: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. head libgambatte/src/mem/cartridge_libretro.cpp:50:24: style:inconclusive: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. [functionConst] libgambatte/src/mem/cartridge.h:138:19: note: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. libgambatte/src/mem/cartridge_libretro.cpp:50:24: note: Technically the member function 'gambatte::Cartridge::savedata_size' can be const. 2.17.0 libgambatte/src/video.h:141:21: style:inconclusive: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. [functionConst] libgambatte/src/video_libretro.cpp:118:23: note: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. libgambatte/src/video.h:141:21: note: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. 2.17.0 libgambatte/src/video/ppu.cpp:1519:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable len [valueFlowBailoutIncompleteVar] head libgambatte/src/video/sprite_mapper.cpp:156:20: style:inconclusive: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. [functionConst] libgambatte/src/video/sprite_mapper.h:115:7: note: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. libgambatte/src/video/sprite_mapper.cpp:156:20: note: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. 2.17.0 libgambatte/src/video/sprite_mapper.h:115:7: style:inconclusive: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. [functionConst] libgambatte/src/video/sprite_mapper.cpp:156:20: note: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. libgambatte/src/video/sprite_mapper.h:115:7: note: Technically the member function 'gambatte::SpriteMapper::clearMap' can be const. head libgambatte/src/video_libretro.cpp:118:23: style:inconclusive: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. [functionConst] libgambatte/src/video.h:141:21: note: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. libgambatte/src/video_libretro.cpp:118:23: note: Technically the member function 'gambatte::LCD::gbcToRgb32' can be const. DONE