Use unsigned char as argument of std::isspace
Although signature allows an int: int isspace( int ch ); The behavior is undefined if the value of ch is not representable as unsigned char and is not equal to EOF. See http://en.cppreference.com/w/cpp/string/byte/isspace http://www.greenend.org.uk/rjk/tech/cfu.html This is really a tricky corner case of C standard! Spotted and reported by Ron Britvich. No functional change.pull/3/head
parent
7f56d2949d
commit
4d30126e4b
|
@ -226,7 +226,7 @@ void Position::set(const string& fenStr, bool isChess960, Thread* th) {
|
|||
incremented after Black's move.
|
||||
*/
|
||||
|
||||
char col, row, token;
|
||||
unsigned char col, row, token;
|
||||
size_t idx;
|
||||
Square sq = SQ_A8;
|
||||
std::istringstream ss(fenStr);
|
||||
|
|
Loading…
Reference in New Issue