 
         let player = playerTurn
         for moveSquare in movesBitboard {
-            try! _execute(uncheckedMove: square >>> moveSquare)
+            try! execute(uncheckedMove: square >>> moveSquare)
             if board.attackersToKing(for: player) != 0 {
                 movesBitboard[moveSquare] = false
             }


    #endif

    /// Executes a move without checking the legality of the move.
    private func _execute(uncheckedMove move: Move) throws {
        try _execute(uncheckedMove: move, promotion: { ._queen })
    }

    #if swift(>=3)

        guard isLegal(move: move) else {
            throw ExecutionError.illegalMove(move, playerTurn, board)
        }
        try execute(uncheckedMove: move, promotion: promotion)
        if kingIsChecked {
            attackersToKing = 0
        } else {
