diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Board.cpp | 4 | ||||
| -rw-r--r-- | src/ChessArbiter.cpp | 1 | ||||
| -rw-r--r-- | src/Fen.cpp | 6 | ||||
| -rw-r--r-- | src/Fen.hpp | 2 | ||||
| -rw-r--r-- | src/Piece.hpp | 2 |
5 files changed, 7 insertions, 8 deletions
diff --git a/src/Board.cpp b/src/Board.cpp index 029c407..b711058 100644 --- a/src/Board.cpp +++ b/src/Board.cpp @@ -21,7 +21,7 @@ bool Board::AddPiece(char p, const std::string &coord) { } bool Board::RemovePiece(const std::string &coord) { - for (char i = 0; i < pieces.size(); i++) { + for (char i = 0; i < (char)pieces.size(); i++) { if (pieces[i].coord == coord) { pieces.erase(pieces.begin() + i); return (true); @@ -183,7 +183,7 @@ bool Board::IsMovePossible(const std::string &move) { char r = src[1] + d2 * side; // Perform empty square checks - while (f != dst[0], r != dst[1]) { + while (f != dst[0] && r != dst[1]) { if (!IsEmpty(f + std::string() + r)) { return (false); } diff --git a/src/ChessArbiter.cpp b/src/ChessArbiter.cpp index 3c3a26a..947807a 100644 --- a/src/ChessArbiter.cpp +++ b/src/ChessArbiter.cpp @@ -480,7 +480,6 @@ std::string ChessArbiter::ParseSAN(const std::string &SANMove) { piece = SANMove[0]; char c1 = (SANMove.size() >= 2) ? SANMove[1] : '?'; char c2 = (SANMove.size() >= 3) ? SANMove[2] : '?'; - char c3 = (SANMove.size() >= 4) ? SANMove[3] : '?'; if (c1 == 'x') { dst = SANMove.substr(2, 2); } else if (c2 == 'x') { diff --git a/src/Fen.cpp b/src/Fen.cpp index 54dddfd..3ba4ddb 100644 --- a/src/Fen.cpp +++ b/src/Fen.cpp @@ -28,7 +28,7 @@ std::string FENParser::normalize_rank(const std::string &fen_rank) { } char FENParser::NextToken(const std::string &fen, char loc) { - while (loc < fen.size() && IS_BLANK(fen[loc])) { + while (loc < (char)fen.size() && IS_BLANK(fen[loc])) { loc++; } return (loc); @@ -36,7 +36,7 @@ char FENParser::NextToken(const std::string &fen, char loc) { char FENParser::NextRank(const std::string &fen, char loc) { loc++; - while (loc < fen.size() && fen[loc] != '/' && fen[loc] != ' ') { + while (loc < (char)fen.size() && fen[loc] != '/' && fen[loc] != ' ') { loc++; } return (loc); @@ -190,7 +190,7 @@ FEN FENParser::Parse(const std::string &fen) { // Parse move counter loc = NextToken(fen, loc); std::string move; - while (loc < fen.size() && !IS_BLANK(fen[loc])) { + while (loc < (char)fen.size() && !IS_BLANK(fen[loc])) { if (!IS_DIGIT(fen[loc])) { throw InvalidFEN(); } diff --git a/src/Fen.hpp b/src/Fen.hpp index bcb93de..ac344ad 100644 --- a/src/Fen.hpp +++ b/src/Fen.hpp @@ -6,7 +6,7 @@ (c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || \ c == '6' || c == '7' || c == '8' || c == '9') #define IS_BLANK(c) (c == ' ' || c == '\n' || c == '\t' || c == '\r') -#define CHECK_LOC() {if(loc>=fen.size()){throw InvalidFEN();}} +#define CHECK_LOC() {if(loc>=(char)fen.size()){throw InvalidFEN();}} namespace chessarbiter { diff --git a/src/Piece.hpp b/src/Piece.hpp index 7469ee2..60452dd 100644 --- a/src/Piece.hpp +++ b/src/Piece.hpp @@ -16,9 +16,9 @@ namespace chessarbiter { */ class Piece { public: + char piece; bool isBlack; std::string coord; - char piece; Piece(char c, const std::string &coord); /// @brief Get all possible moves according to the type of piece and its position std::vector<std::string> GetMoves(); |
