2025-11-21 13:05 ftp://ftp.de.debian.org/debian/pool/main/g/glaurung/glaurung_2.2.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 -j4 platform: Linux-6.12.57+deb13-amd64-x86_64-with-glibc2.41 python: 3.13.5 client-version: 1.3.67 compiler: g++ (Debian 14.2.0-19) 14.2.0 cppcheck: head 2.18.0 head-info: 5374cd3 (2025-11-20 15:35:39 +0100) count: 244 240 elapsed-time: 9.3 10.6 head-timing-info: old-timing-info: head results: glaurung-2.2/src/bitboard.cpp:290:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/benchmark.cpp:69:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] glaurung-2.2/src/bitbase.cpp:309:12: style: The scope of the variable 's' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:367:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] glaurung-2.2/src/book.cpp:382:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] glaurung-2.2/src/book.cpp:483:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] glaurung-2.2/src/book.cpp:567:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] glaurung-2.2/src/position.h:566:27: performance:inconclusive: Technically the member function 'Position::pawn_attacks' can be static (but you may consider moving to unnamed namespace). [functionStatic] glaurung-2.2/src/position.h:186:12: note: Technically the member function 'Position::pawn_attacks' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:566:27: note: Technically the member function 'Position::pawn_attacks' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:578:27: performance:inconclusive: Technically the member function 'Position::knight_attacks' can be static (but you may consider moving to unnamed namespace). [functionStatic] glaurung-2.2/src/position.h:189:12: note: Technically the member function 'Position::knight_attacks' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:578:27: note: Technically the member function 'Position::knight_attacks' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:594:27: performance:inconclusive: Technically the member function 'Position::king_attacks' can be static (but you may consider moving to unnamed namespace). [functionStatic] glaurung-2.2/src/position.h:193:12: note: Technically the member function 'Position::king_attacks' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:594:27: note: Technically the member function 'Position::king_attacks' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:670:24: performance:inconclusive: Technically the member function 'Position::mg_pst' can be static (but you may consider moving to unnamed namespace). [functionStatic] glaurung-2.2/src/position.h:317:9: note: Technically the member function 'Position::mg_pst' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:670:24: note: Technically the member function 'Position::mg_pst' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:674:24: performance:inconclusive: Technically the member function 'Position::eg_pst' can be static (but you may consider moving to unnamed namespace). [functionStatic] glaurung-2.2/src/position.h:318:9: note: Technically the member function 'Position::eg_pst' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/position.h:674:24: note: Technically the member function 'Position::eg_pst' can be static (but you may consider moving to unnamed namespace). glaurung-2.2/src/movepick.h:85:29: style:inconclusive: Technically the member function 'MovePicker::discovered_check_candidates' can be const. [functionConst] glaurung-2.2/src/movepick.h:53:12: note: Technically the member function 'MovePicker::discovered_check_candidates' can be const. glaurung-2.2/src/movepick.h:85:29: note: Technically the member function 'MovePicker::discovered_check_candidates' can be const. glaurung-2.2/src/position.h:114:3: style: Class 'Position' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/tt.h:65:3: style: Class 'TranspositionTable' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/position.h:546:49: style:inconclusive: Function 'can_castle_kingside' argument 1 names different: declaration 'c' definition 'side'. [funcArgNamesDifferent] glaurung-2.2/src/position.h:177:34: note: Function 'can_castle_kingside' argument 1 names different: declaration 'c' definition 'side'. glaurung-2.2/src/position.h:546:49: note: Function 'can_castle_kingside' argument 1 names different: declaration 'c' definition 'side'. glaurung-2.2/src/position.h:550:50: style:inconclusive: Function 'can_castle_queenside' argument 1 names different: declaration 'c' definition 'side'. [funcArgNamesDifferent] glaurung-2.2/src/position.h:178:35: note: Function 'can_castle_queenside' argument 1 names different: declaration 'c' definition 'side'. glaurung-2.2/src/position.h:550:50: note: Function 'can_castle_queenside' argument 1 names different: declaration 'c' definition 'side'. glaurung-2.2/src/position.h:554:40: style:inconclusive: Function 'can_castle' argument 1 names different: declaration 'c' definition 'side'. [funcArgNamesDifferent] glaurung-2.2/src/position.h:179:25: note: Function 'can_castle' argument 1 names different: declaration 'c' definition 'side'. glaurung-2.2/src/position.h:554:40: note: Function 'can_castle' argument 1 names different: declaration 'c' definition 'side'. glaurung-2.2/src/book.cpp:409:38: style: The scope of the variable 'move' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:409:44: style: The scope of the variable 'score' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:445:20: style: The scope of the variable 'mid' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:506:14: style: The scope of the variable 's' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:507:13: style: The scope of the variable 'p' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:560:9: style: The scope of the variable 'b' can be reduced. [variableScope] glaurung-2.2/src/book.cpp:504:38: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:488:28: error: Array 'shift[2]' accessed at index 63, which is out of bounds. [arrayIndexOutOfBounds] glaurung-2.2/src/bitboard.cpp:485:18: note: Assuming that condition 'i<64' is not redundant glaurung-2.2/src/bitboard.cpp:488:28: note: Array index out of bounds glaurung-2.2/src/bitboard.cpp:469:12: style: The scope of the variable 'j' can be reduced. [variableScope] glaurung-2.2/src/bitboard.cpp:483:12: style: The scope of the variable 'j' can be reduced. [variableScope] glaurung-2.2/src/bitboard.cpp:401:9: style: Variable 'd' can be declared as const array [constVariable] glaurung-2.2/src/bitboard.cpp:414:9: style: Variable 'step' can be declared as const array [constVariable] glaurung-2.2/src/bitboard.cpp:453:17: style: Variable 'step' can be declared as const array [constVariable] glaurung-2.2/src/bitboard.cpp:289:37: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:291:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:387:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:391:38: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:392:41: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:457:41: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:458:43: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/bitboard.cpp:510:32: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/direction.cpp:41:15: style: Variable 'deltas' can be declared as const array [constVariable] glaurung-2.2/src/direction.cpp:44:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/direction.cpp:45:41: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/direction.cpp:49:65: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/main.cpp:78:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/material.h:46:1: style: The class 'MaterialInfo' does not declare a constructor although it has private member variables which likely require initialization. [noConstructor] glaurung-2.2/src/pawns.h:41:1: style: The class 'PawnInfo' does not declare a constructor although it has private member variables which likely require initialization. [noConstructor] glaurung-2.2/src/endgame.h:55:3: style: Class 'KXKEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:62:3: style: Class 'KBNKEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:69:3: style: Class 'KPKEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:76:3: style: Class 'KRKPEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:83:3: style: Class 'KRKBEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:90:3: style: Class 'KRKNEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:97:3: style: Class 'KQKREvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:104:3: style: Class 'KBBKNEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:111:3: style: Class 'KmmKmEvaluationFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:135:3: style: Class 'KBPKScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:142:3: style: Class 'KQKRPScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:149:3: style: Class 'KRPKRScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:156:3: style: Class 'KRPPKRPScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:163:3: style: Class 'KPsKScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:170:3: style: Class 'KBPKBScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:177:3: style: Class 'KBPKNScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:184:3: style: Class 'KNPKScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:191:3: style: Class 'KPKPScalingFunction' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/material.h:81:3: style: Class 'MaterialInfoTable' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/pawns.h:74:3: style: Class 'PawnInfoTable' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/endgame.h:56:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:56:9: note: Function in derived class glaurung-2.2/src/endgame.h:63:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:63:9: note: Function in derived class glaurung-2.2/src/endgame.h:70:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:70:9: note: Function in derived class glaurung-2.2/src/endgame.h:77:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:77:9: note: Function in derived class glaurung-2.2/src/endgame.h:84:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:84:9: note: Function in derived class glaurung-2.2/src/endgame.h:91:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:91:9: note: Function in derived class glaurung-2.2/src/endgame.h:98:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:98:9: note: Function in derived class glaurung-2.2/src/endgame.h:105:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:105:9: note: Function in derived class glaurung-2.2/src/endgame.h:112:9: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:43:17: note: Virtual function in base class glaurung-2.2/src/endgame.h:112:9: note: Function in derived class glaurung-2.2/src/endgame.h:136:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:136:15: note: Function in derived class glaurung-2.2/src/endgame.h:143:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:143:15: note: Function in derived class glaurung-2.2/src/endgame.h:150:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:150:15: note: Function in derived class glaurung-2.2/src/endgame.h:157:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:157:15: note: Function in derived class glaurung-2.2/src/endgame.h:164:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:164:15: note: Function in derived class glaurung-2.2/src/endgame.h:171:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:171:15: note: Function in derived class glaurung-2.2/src/endgame.h:178:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:178:15: note: Function in derived class glaurung-2.2/src/endgame.h:185:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:185:15: note: Function in derived class glaurung-2.2/src/endgame.h:192:15: style: The function 'apply' overrides a function in a base class but is not marked with a 'override' specifier. [missingOverride] glaurung-2.2/src/endgame.h:123:23: note: Virtual function in base class glaurung-2.2/src/endgame.h:192:15: note: Function in derived class glaurung-2.2/src/material.cpp:164:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] glaurung-2.2/src/mersenne.cpp:104:24: style: The scope of the variable 'mag01' can be reduced. [variableScope] glaurung-2.2/src/mersenne.cpp:76:34: style: Parameter 'init_key' can be declared as const array [constParameter] glaurung-2.2/src/mersenne.cpp:104:24: style: Variable 'mag01' can be declared as const array [constVariable] glaurung-2.2/src/misc.cpp:127:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] glaurung-2.2/src/material.cpp:162:3: warning: Class 'MaterialInfoTable' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] glaurung-2.2/src/material.cpp:162:3: warning: Class 'MaterialInfoTable' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] glaurung-2.2/src/move.cpp:106:39: style:inconclusive: Function 'move_to_string' argument 1 names different: declaration 'm' definition 'move'. [funcArgNamesDifferent] glaurung-2.2/src/move.h:108:46: note: Function 'move_to_string' argument 1 names different: declaration 'm' definition 'move'. glaurung-2.2/src/move.cpp:106:39: note: Function 'move_to_string' argument 1 names different: declaration 'm' definition 'move'. glaurung-2.2/src/material.cpp:396:40: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movepick.cpp:79:13: warning: Member variable 'MovePicker::moves' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/movepick.cpp:79:13: warning: Member variable 'MovePicker::badCaptures' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/movepick.cpp:79:13: warning: Member variable 'MovePicker::badCapturesPicked' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/movepick.cpp:113:8: style: The scope of the variable 'move' can be reduced. [variableScope] glaurung-2.2/src/pawns.cpp:143:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] glaurung-2.2/src/pawns.cpp:141:3: warning: Class 'PawnInfoTable' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] glaurung-2.2/src/pawns.cpp:141:3: warning: Class 'PawnInfoTable' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] glaurung-2.2/src/pawns.cpp:192:38: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/pawns.cpp:199:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/piece.cpp:92:33: style:inconclusive: Function 'piece_type_is_ok' argument 1 names different: declaration 'pt' definition 'pc'. [funcArgNamesDifferent] glaurung-2.2/src/piece.h:129:40: note: Function 'piece_type_is_ok' argument 1 names different: declaration 'pt' definition 'pc'. glaurung-2.2/src/piece.cpp:92:33: note: Function 'piece_type_is_ok' argument 1 names different: declaration 'pt' definition 'pc'. glaurung-2.2/src/movegen.cpp:343:12: style: The scope of the variable 'pinned' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:344:15: style: The scope of the variable 'from' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:1095:12: style: The scope of the variable 'from' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:1113:12: style: The scope of the variable 'from' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:1131:12: style: The scope of the variable 'from' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:1149:12: style: The scope of the variable 'from' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:1167:12: style: The scope of the variable 'to' can be reduced. [variableScope] glaurung-2.2/src/movegen.cpp:670:48: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:674:44: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:702:48: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:706:44: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:1197:50: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:1201:50: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:1218:50: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/movegen.cpp:1222:50: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/endgame.cpp:196:56: style:inconclusive: Function 'KBBKNEvaluationFunction' argument 1 names different: declaration 'C' definition 'c'. [funcArgNamesDifferent] glaurung-2.2/src/endgame.h:104:33: note: Function 'KBBKNEvaluationFunction' argument 1 names different: declaration 'C' definition 'c'. glaurung-2.2/src/endgame.cpp:196:56: note: Function 'KBBKNEvaluationFunction' argument 1 names different: declaration 'C' definition 'c'. glaurung-2.2/src/endgame.cpp:495:69: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/endgame.cpp:499:69: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/san.cpp:412:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable fixed [valueFlowBailoutIncompleteVar] glaurung-2.2/src/evaluate.cpp:1247:21: error: Array 'SafetyTable[100]' accessed at index 100, which is out of bounds. [arrayIndexOutOfBounds] glaurung-2.2/src/evaluate.cpp:1246:18: note: Assuming that condition 'i<100' is not redundant glaurung-2.2/src/evaluate.cpp:1247:21: note: Array index out of bounds glaurung-2.2/src/position.cpp:107:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/position.cpp:271:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/evaluate.cpp:800:16: style: The scope of the variable 'occ' can be reduced. [variableScope] glaurung-2.2/src/evaluate.cpp:830:22: style: The scope of the variable 'from' can be reduced. [variableScope] glaurung-2.2/src/evaluate.cpp:1185:71: style: Parameter 'sf' can be declared as const array [constParameter] glaurung-2.2/src/evaluate.cpp:349:36: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/evaluate.cpp:391:36: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/evaluate.cpp:921:40: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/san.cpp:153:54: style:inconclusive: Function 'move_from_san' argument 2 names different: declaration 'str' definition 'movestr'. [funcArgNamesDifferent] glaurung-2.2/src/san.h:39:61: note: Function 'move_from_san' argument 2 names different: declaration 'str' definition 'movestr'. glaurung-2.2/src/san.cpp:153:54: note: Function 'move_from_san' argument 2 names different: declaration 'str' definition 'movestr'. glaurung-2.2/src/san.cpp:273:57: style: Parameter 'line' can be declared as const array [constParameter] glaurung-2.2/src/timeoday.cpp:21:18: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] glaurung-2.2/src/tt.cpp:70:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cerr [valueFlowBailoutIncompleteVar] glaurung-2.2/src/search.cpp:312:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/search.cpp:590:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/search.cpp:712:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/search.cpp:2034:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] glaurung-2.2/src/search.cpp:2111:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/search.cpp:2134:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cin [valueFlowBailoutIncompleteVar] glaurung-2.2/src/uci.cpp:178:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cin [valueFlowBailoutIncompleteVar] glaurung-2.2/src/uci.cpp:199:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/tt.cpp:195:10: warning:inconclusive: Member variable 'TTEntry::key_' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/tt.cpp:195:10: warning:inconclusive: Member variable 'TTEntry::data' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/tt.cpp:195:10: warning:inconclusive: Member variable 'TTEntry::value_' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/tt.cpp:195:10: warning:inconclusive: Member variable 'TTEntry::depth_' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/tt.cpp:187:25: style:inconclusive: Technically the member function 'TranspositionTable::full' can be const. [functionConst] glaurung-2.2/src/tt.h:74:7: note: Technically the member function 'TranspositionTable::full' can be const. glaurung-2.2/src/tt.cpp:187:25: note: Technically the member function 'TranspositionTable::full' can be const. glaurung-2.2/src/tt.cpp:172:62: style: Parameter 'pv' can be declared as const array [constParameter] glaurung-2.2/src/uci.cpp:56:5: style: Class 'UCIInputParser' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] glaurung-2.2/src/uci.cpp:278:14: style: The scope of the variable 'move' can be reduced. [variableScope] glaurung-2.2/src/uci.cpp:299:17: style: The scope of the variable 'token' can be reduced. [variableScope] glaurung-2.2/src/uci.cpp:326:17: style: The scope of the variable 'token' can be reduced. [variableScope] glaurung-2.2/src/ucioption.cpp:246:10: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] glaurung-2.2/src/ucioption.cpp:178:15: style: Variable 'o' can be declared as pointer to const [constVariablePointer] glaurung-2.2/src/ucioption.cpp:197:11: style: Variable 'o' can be declared as pointer to const [constVariablePointer] glaurung-2.2/src/ucioption.cpp:208:11: style: Variable 'o' can be declared as pointer to const [constVariablePointer] glaurung-2.2/src/ucioption.cpp:217:11: style: Variable 'o' can be declared as pointer to const [constVariablePointer] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::byColorBB' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::byTypeBB' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::checkersBB' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::board' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::pieceCount' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::pieceList' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::index' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::sideToMove' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::castleRights' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::initialKFile' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::initialKRFile' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::initialQRFile' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::epSquare' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::kingSquare' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::lastMove' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::key' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::pawnKey' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::materialKey' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::history' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::rule50' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::gamePly' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::mgValue' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::egValue' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:60:11: warning:inconclusive: Member variable 'Position::npMaterial' is not initialized in the constructor. [uninitMemberVar] glaurung-2.2/src/position.cpp:226:7: style: The scope of the variable 'skip' can be reduced. [variableScope] glaurung-2.2/src/position.cpp:1611:28: style: The scope of the variable 'b' can be reduced. [variableScope] glaurung-2.2/src/position.cpp:299:37: style: Local variable 'sliders' shadows outer function [shadowFunction] glaurung-2.2/src/position.h:151:12: note: Shadowed declaration glaurung-2.2/src/position.cpp:299:37: note: Shadow variable glaurung-2.2/src/position.cpp:336:24: style: Local variable 'checkers' shadows outer function [shadowFunction] glaurung-2.2/src/position.h:200:12: note: Shadowed declaration glaurung-2.2/src/position.cpp:336:24: note: Shadow variable glaurung-2.2/src/position.cpp:336:34: style: Local variable 'sliders' shadows outer function [shadowFunction] glaurung-2.2/src/position.h:151:12: note: Shadowed declaration glaurung-2.2/src/position.cpp:336:34: note: Shadow variable glaurung-2.2/src/position.cpp:224:8: style: Variable 'pieceLetters' can be declared as const array [constVariable] glaurung-2.2/src/position.cpp:265:8: style: Variable 'pieceStrings' can be declared as const array [constVariable] glaurung-2.2/src/position.cpp:1350:8: style: Variable 'them' is assigned a value that is never used. [unreadVariable] glaurung-2.2/src/position.cpp:92:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:93:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:94:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:95:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:96:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:97:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:98:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:99:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:100:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:101:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:102:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:103:46: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:104:32: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:142:51: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:162:51: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:197:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:228:43: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:230:45: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:270:43: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:272:45: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1658:72: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1795:37: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1820:36: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1839:36: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1840:43: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1860:36: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1861:42: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1879:36: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1880:42: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:1903:43: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2032:37: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2033:32: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2039:37: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2040:32: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2057:37: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2074:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2144:39: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2178:42: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2179:44: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2222:38: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2223:44: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2228:38: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/position.cpp:2229:44: performance: Prefer prefix ++/-- operators for non-primitive types. [postfixOperator] glaurung-2.2/src/search.cpp:785:34: style: Array index 'j' is used before limits check. [arrayIndexThenCheck] glaurung-2.2/src/search.cpp:2167:17: style: Condition 'Idle||threadID>=ActiveThreads' is always true [knownConditionTrueFalse] glaurung-2.2/src/search.cpp:2164:36: note: Assuming that condition 'Idle||threadID>=ActiveThreads' is not redundant glaurung-2.2/src/search.cpp:2167:17: note: Condition 'Idle||threadID>=ActiveThreads' is always true glaurung-2.2/src/search.cpp:516:48: style: C-style pointer casting [cstyleCast] glaurung-2.2/src/search.cpp:2426:16: style: C-style pointer casting [cstyleCast] glaurung-2.2/src/search.cpp:1618:16: style: The scope of the variable 'u' can be reduced. [variableScope] glaurung-2.2/src/search.cpp:1619:19: style: The scope of the variable 'ss' can be reduced. [variableScope] glaurung-2.2/src/search.cpp:2153:44: style: Parameter 'waitSp' can be declared as pointer to const [constParameterPointer] glaurung-2.2/src/search.cpp:2225:17: style: Variable 'sp' can be declared as pointer to const [constVariablePointer] glaurung-2.2/src/search.cpp:2300:32: style: Parameter 'moves' can be declared as pointer to const [constParameterPointer] glaurung-2.2/src/search.cpp:1387:19: style: Variable 'moveCount' is assigned a value that is never used. [unreadVariable] glaurung-2.2/src/search.cpp:1491:19: style: Variable 'moveCount' is assigned a value that is never used. [unreadVariable] diff: 2.18.0 glaurung-2.2/src/material.cpp:162:3: warning: Class 'MaterialInfoTable' does not have a copy constructor which is recommended since it has dynamic memory/resource allocation(s). [noCopyConstructor] head glaurung-2.2/src/material.cpp:162:3: warning: Class 'MaterialInfoTable' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] 2.18.0 glaurung-2.2/src/material.cpp:162:3: warning: Class 'MaterialInfoTable' does not have a operator= which is recommended since it has dynamic memory/resource allocation(s). [noOperatorEq] head glaurung-2.2/src/material.cpp:162:3: warning: Class 'MaterialInfoTable' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] 2.18.0 glaurung-2.2/src/pawns.cpp:141:3: warning: Class 'PawnInfoTable' does not have a copy constructor which is recommended since it has dynamic memory/resource allocation(s). [noCopyConstructor] head glaurung-2.2/src/pawns.cpp:141:3: warning: Class 'PawnInfoTable' does not have a copy constructor which is recommended since it has dynamic memory/resource management. [noCopyConstructor] 2.18.0 glaurung-2.2/src/pawns.cpp:141:3: warning: Class 'PawnInfoTable' does not have a operator= which is recommended since it has dynamic memory/resource allocation(s). [noOperatorEq] head glaurung-2.2/src/pawns.cpp:141:3: warning: Class 'PawnInfoTable' does not have a operator= which is recommended since it has dynamic memory/resource management. [noOperatorEq] head glaurung-2.2/src/search.cpp:1618:16: style: The scope of the variable 'u' can be reduced. [variableScope] head glaurung-2.2/src/search.cpp:1619:19: style: The scope of the variable 'ss' can be reduced. [variableScope] head glaurung-2.2/src/search.cpp:2225:17: style: Variable 'sp' can be declared as pointer to const [constVariablePointer] head glaurung-2.2/src/ucioption.cpp:178:15: style: Variable 'o' can be declared as pointer to const [constVariablePointer] DONE