Board boards[MAX_MOVES];
/* [HGM] Following 7 needed for accurate legality tests: */
-char epStatus[MAX_MOVES];
-char castlingRights[MAX_MOVES][BOARD_SIZE]; // stores files for pieces with castling rights or -1
-char castlingRank[BOARD_SIZE]; // and corresponding ranks
-char initialRights[BOARD_SIZE], FENcastlingRights[BOARD_SIZE], fileRights[BOARD_SIZE];
+signed char epStatus[MAX_MOVES];
+signed char castlingRights[MAX_MOVES][BOARD_SIZE]; // stores files for pieces with castling rights or -1
+signed char castlingRank[BOARD_SIZE]; // and corresponding ranks
+signed char initialRights[BOARD_SIZE], FENcastlingRights[BOARD_SIZE], fileRights[BOARD_SIZE];
int nrCastlingRights; // For TwoKings, or to implement castling-unknown status
int initialRulePlies, FENrulePlies;
char FENepStatus;
int SameColor P((ChessSquare, ChessSquare));
int PosFlags(int index);
-extern char initialRights[BOARD_SIZE]; /* [HGM] all rights enabled, set in InitPosition */
+extern signed char initialRights[BOARD_SIZE]; /* [HGM] all rights enabled, set in InitPosition */
int WhitePiece(piece)
extern char *yy_text; /* Needed because yytext can be either a char[]
or a (non-constant) char* */
extern int yyoffset P((void));
-extern char initialRights[BOARD_SIZE];
-extern char castlingRights[MAX_MOVES][BOARD_SIZE];
+extern signed char initialRights[BOARD_SIZE];
+extern signed char castlingRights[MAX_MOVES][BOARD_SIZE];