diff --git a/patsolve/abstract_fc_solve_solver.h b/patsolve/abstract_fc_solve_solver.h --- a/patsolve/abstract_fc_solve_solver.h +++ b/patsolve/abstract_fc_solve_solver.h @@ -25,19 +25,19 @@ public: FcSolveSolver(); virtual ~FcSolveSolver(); - virtual int get_possible_moves(int *a, int *numout) = 0; - virtual bool isWon(); - virtual void make_move(MOVE *m); - virtual void undo_move(MOVE *m); - virtual int getOuts(); - virtual unsigned int getClusterNumber(); - virtual void translate_layout() = 0; - virtual void unpack_cluster( unsigned int k ); - virtual MoveHint translateMove(const MOVE &m) = 0; - virtual SolverInterface::ExitStatus patsolve( int _max_positions = -1); + virtual int get_possible_moves(int *a, int *numout) Q_DECL_OVERRIDE = 0; + virtual bool isWon() Q_DECL_OVERRIDE; + virtual void make_move(MOVE *m) Q_DECL_OVERRIDE; + virtual void undo_move(MOVE *m) Q_DECL_OVERRIDE; + virtual int getOuts() Q_DECL_OVERRIDE; + virtual unsigned int getClusterNumber() Q_DECL_OVERRIDE; + virtual void translate_layout() Q_DECL_OVERRIDE = 0; + virtual void unpack_cluster( unsigned int k ) Q_DECL_OVERRIDE; + virtual MoveHint translateMove(const MOVE &m) Q_DECL_OVERRIDE = 0; + virtual SolverInterface::ExitStatus patsolve( int _max_positions = -1) Q_DECL_OVERRIDE; virtual void setFcSolverGameParams() = 0; - virtual void print_layout(); + virtual void print_layout() Q_DECL_OVERRIDE; virtual int get_cmd_line_arg_count() = 0; virtual const char * * get_cmd_line_args() = 0; diff --git a/patsolve/freecellsolver.h b/patsolve/freecellsolver.h --- a/patsolve/freecellsolver.h +++ b/patsolve/freecellsolver.h @@ -42,14 +42,14 @@ void unpack_cluster( unsigned int k ) Q_DECL_OVERRIDE; MoveHint translateMove(const MOVE &m) Q_DECL_OVERRIDE; #endif - virtual void translate_layout(); + virtual void translate_layout() Q_DECL_OVERRIDE; #if 0 virtual void unpack_cluster( unsigned int k ); #endif - virtual MoveHint translateMove(const MOVE &m); - virtual void setFcSolverGameParams(); - virtual int get_cmd_line_arg_count(); - virtual const char * * get_cmd_line_args(); + virtual MoveHint translateMove(const MOVE &m) Q_DECL_OVERRIDE; + virtual void setFcSolverGameParams() Q_DECL_OVERRIDE; + virtual int get_cmd_line_arg_count() Q_DECL_OVERRIDE; + virtual const char * * get_cmd_line_args() Q_DECL_OVERRIDE; #if 0 virtual void print_layout(); diff --git a/patsolve/golfsolver.h b/patsolve/golfsolver.h --- a/patsolve/golfsolver.h +++ b/patsolve/golfsolver.h @@ -33,7 +33,7 @@ #ifdef WITH_BH_SOLVER black_hole_solver_instance_t *solver_instance; int solver_ret; - SolverInterface::ExitStatus patsolve( int _max_positions ); + SolverInterface::ExitStatus patsolve( int _max_positions ) Q_DECL_OVERRIDE; // More than enough space for two decks. char board_as_string[4 * 13 * 2 * 4 * 3]; void free_solver_instance(); diff --git a/patsolve/patsolve.h b/patsolve/patsolve.h --- a/patsolve/patsolve.h +++ b/patsolve/patsolve.h @@ -57,13 +57,13 @@ Solver(); virtual ~Solver(); - virtual ExitStatus patsolve( int max_positions = -1); + virtual ExitStatus patsolve( int max_positions = -1) Q_DECL_OVERRIDE; bool recursive(POSITION *pos = nullptr); - virtual void translate_layout() = 0; - virtual MoveHint translateMove(const MOVE &m ) = 0; - void stopExecution() final; - QList firstMoves() const final; - QList winMoves() const final; + virtual void translate_layout() Q_DECL_OVERRIDE = 0; + virtual MoveHint translateMove(const MOVE &m ) Q_DECL_OVERRIDE = 0; + void stopExecution() final Q_DECL_OVERRIDE; + QList firstMoves() const final Q_DECL_OVERRIDE; + QList winMoves() const final Q_DECL_OVERRIDE; protected: MOVE *get_moves(int *nmoves); diff --git a/patsolve/patsolve.cpp b/patsolve/patsolve.cpp --- a/patsolve/patsolve.cpp +++ b/patsolve/patsolve.cpp @@ -166,7 +166,7 @@ { /* Make sure all the piles have id numbers. */ - for (int w = 0; w < NumberPiles; w++) { + for (size_t w = 0; w < NumberPiles; w++) { if (Wpilenum[w] < 0) { Wpilenum[w] = get_pilenum(w); if (Wpilenum[w] < 0) { @@ -208,7 +208,7 @@ template TREE *Solver::pack_position(void) { - int j, w; + int j; quint8 *p; TREE *node; @@ -232,7 +232,7 @@ */ quint16 *p2 = ( quint16* ) p; - for (w = 0; w < NumberPiles; ++w) { + for (size_t w = 0; w < NumberPiles; ++w) { j = Wpilenum[w]; if ( j < 0 ) { @@ -265,7 +265,7 @@ template void Solver::unpack_position(POSITION *pos) { - int i, w; + int i = 0; BUCKETLIST *l; unpack_cluster(pos->cluster); @@ -278,7 +278,7 @@ j j */ - w = i = 0; + size_t w = 0; quint16 *p2 = ( quint16* )( (quint8 *)(pos->node) + sizeof(TREE) ); while (w < NumberPiles) { i = *p2++; @@ -489,7 +489,6 @@ int i, q; POSITION *pos; MOVE m; - memset( &m, 0, sizeof( MOVE ) ); /* Init the queues. */ @@ -757,7 +756,7 @@ template Solver::~Solver() { - for ( int i = 0; i < NumberPiles; ++i ) + for ( size_t i = 0; i < NumberPiles; ++i ) { delete [] W[i]; } @@ -970,9 +969,7 @@ template void Solver::hash_layout(void) { - int w; - - for (w = 0; w < NumberPiles; w++) { + for (size_t w = 0; w < NumberPiles; w++) { hashpile(w); } } diff --git a/patsolve/simonsolver.h b/patsolve/simonsolver.h --- a/patsolve/simonsolver.h +++ b/patsolve/simonsolver.h @@ -41,10 +41,10 @@ void unpack_cluster( unsigned int k ) Q_DECL_OVERRIDE; void print_layout() Q_DECL_OVERRIDE; #endif - virtual void setFcSolverGameParams(); + virtual void setFcSolverGameParams() Q_DECL_OVERRIDE; - virtual int get_cmd_line_arg_count(); - virtual const char * * get_cmd_line_args(); + virtual int get_cmd_line_arg_count() Q_DECL_OVERRIDE; + virtual const char * * get_cmd_line_args() Q_DECL_OVERRIDE; #if 0 /* Names of the cards. The ordering is defined in pat.h. */ int O[4]; diff --git a/patsolve/simonsolver.cpp b/patsolve/simonsolver.cpp --- a/patsolve/simonsolver.cpp +++ b/patsolve/simonsolver.cpp @@ -167,7 +167,7 @@ freecell_solver_user_apply_preset(solver_instance, "simple_simon"); } -int SimonSolver::get_possible_moves(int *a, int *numout) +int SimonSolver::get_possible_moves(int *, int *numout) { return (*numout = 0); } diff --git a/patsolve/solverinterface.h b/patsolve/solverinterface.h --- a/patsolve/solverinterface.h +++ b/patsolve/solverinterface.h @@ -31,7 +31,7 @@ return pri < m.pri; } - MOVE() : is_fcs(false) {} + MOVE() : card_index(0), from(0), to(0), totype(O_Type), pri(0), turn_index(0), is_fcs(false), fcs() {} }; class SolverInterface {