]> git.sesse.net Git - stockfish/blobdiff - src/san.cpp
Fix silly MSVC warning
[stockfish] / src / san.cpp
index fad47f9573a0d63b66b94b32b00c1aa0fcccf39b..f155887809f6cccca81d672de3c52f674ba6fa50 100644 (file)
@@ -113,10 +113,10 @@ const string move_to_san(const Position& pos, Move m) {
           san += "x";
       }
       san += square_to_string(move_to(m));
-      if (move_promotion(m))
+      if (move_is_promotion(m))
       {
           san += '=';
-          san += piece_type_to_char(move_promotion(m), true);
+          san += piece_type_to_char(move_promotion_piece(m), true);
       }
   }
   // Is the move check?  We don't use pos.move_is_check(m) here, because
@@ -141,14 +141,15 @@ Move move_from_san(const Position& pos, const string& movestr) {
 
   assert(pos.is_ok());
 
-  MovePicker mp = MovePicker(pos, false, MOVE_NONE, OnePly, H);
+  MovePicker mp = MovePicker(pos, MOVE_NONE, OnePly, H);
+  Bitboard pinned = pos.pinned_pieces(pos.side_to_move());
 
   // Castling moves
   if (movestr == "O-O-O" || movestr == "O-O-O+")
   {
       Move m;
       while ((m = mp.get_next_move()) != MOVE_NONE)
-          if (move_is_long_castle(m) && pos.pl_move_is_legal(m))
+          if (move_is_long_castle(m) && pos.pl_move_is_legal(m, pinned))
               return m;
 
       return MOVE_NONE;
@@ -157,7 +158,7 @@ Move move_from_san(const Position& pos, const string& movestr) {
   {
       Move m;
       while ((m = mp.get_next_move()) != MOVE_NONE)
-          if (move_is_short_castle(m) && pos.pl_move_is_legal(m))
+          if (move_is_short_castle(m) && pos.pl_move_is_legal(m, pinned))
               return m;
 
     return MOVE_NONE;
@@ -273,7 +274,7 @@ Move move_from_san(const Position& pos, const string& movestr) {
   while ((m = mp.get_next_move()) != MOVE_NONE)
       if (   pos.type_of_piece_on(move_from(m)) == pt
           && move_to(m) == to
-          && move_promotion(m) == promotion
+          && move_promotion_piece(m) == promotion
           && (fromFile == FILE_NONE || fromFile == square_file(move_from(m)))
           && (fromRank == RANK_NONE || fromRank == square_rank(move_from(m))))
       {
@@ -325,14 +326,15 @@ const string line_to_san(const Position& pos, Move line[], int startColumn, bool
 /// when the UCI parameter "Use Search Log" is "true").
 
 const string pretty_pv(const Position& pos, int time, int depth,
-                       uint64_t nodes, Value score, Move pv[]) {
+                       uint64_t nodes, Value score, ValueType type, Move pv[]) {
   std::stringstream s;
 
   // Depth
   s << std::setw(2) << depth << "  ";
 
   // Score
-  s << std::setw(8) << score_string(score);
+  s << ((type == VALUE_TYPE_LOWER)? ">" : ((type == VALUE_TYPE_UPPER)? "<" : " "));
+  s << std::setw(7) << score_string(score);
 
   // Time
   s << std::setw(8) << time_string(time) << " ";
@@ -365,12 +367,13 @@ namespace {
     if (type_of_piece(pc) == KING)
         return AMBIGUITY_NONE;
 
-    MovePicker mp = MovePicker(pos, false, MOVE_NONE, OnePly, H);
+    MovePicker mp = MovePicker(pos, MOVE_NONE, OnePly, H);
+    Bitboard pinned = pos.pinned_pieces(pos.side_to_move());
     Move mv, moveList[8];
 
     int n = 0;
     while ((mv = mp.get_next_move()) != MOVE_NONE)
-        if (move_to(mv) == to && pos.piece_on(move_from(mv)) == pc && pos.pl_move_is_legal(mv))
+        if (move_to(mv) == to && pos.piece_on(move_from(mv)) == pc && pos.pl_move_is_legal(mv, pinned))
             moveList[n++] = mv;
 
     if (n == 1)