From: Marco Costalba Date: Sat, 20 Mar 2010 10:45:04 +0000 (+0100) Subject: Retire Position::fast_copy() X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=3de0bc43a272d1180a1710f5009de8aec450ed02 Retire Position::fast_copy() It is never used and could be tricky, so remove it. No functional change. Signed-off-by: Marco Costalba --- diff --git a/src/position.cpp b/src/position.cpp index 7d01cb60..5b4dba70 100644 --- a/src/position.cpp +++ b/src/position.cpp @@ -87,7 +87,7 @@ Position::Position() {} Position::Position(const Position& pos) { - fast_copy(pos); + memcpy(this, &pos, sizeof(Position)); detach(); // Always detach() in copy c'tor to avoid surprises } @@ -97,19 +97,6 @@ Position::Position(const string& fen) { } -/// Position::fast_copy() creates a partial copy of the given position, -/// only data that changes with a do_move() / undo_move() cycle is copied, -/// in particular for stateInfo are copied only the pointers, so that the -/// actual data remains stored in the parent Position. This is not a problem -/// if the parent Position is known not to be destroyed while we are still alive, -/// as is the common case, see detach() otherwise. - -void Position::fast_copy(const Position& pos) { - - memcpy(this, &pos, sizeof(Position)); -} - - /// Position::detach() copies the content of the current state and castling /// masks inside the position itself. This is needed when the st pointee could /// become stale, as example because the caller is about to going out of scope. diff --git a/src/position.h b/src/position.h index c946cb6a..0fce1860 100644 --- a/src/position.h +++ b/src/position.h @@ -156,7 +156,6 @@ public: void print(Move m = MOVE_NONE) const; // Copying - void fast_copy(const Position& pos); void flipped_copy(const Position& pos); // The piece on a given square