/in/player.cpp:18:1: error: redefinition of 'Player::Player(Board*, Pool*)'
Player::Player(Board *board, Pool*pool)
^~~~~~
In file included from /in/player.cpp:11:0:
/in/compile/player.h:14:4: note: 'Player::Player(Board*, Pool*)' previously defined here
Player(Board *board, Pool *pool): board(board), pool(pool){}
^~~~~~
/in/player.cpp: In member function 'virtual Piece& HumanPlayer::selectPiece()':
/in/player.cpp:41:9: error: reference to local variable 'p' returned [-Werror=return-local-addr]
Piece p;
^
/in/player.cpp: In member function 'virtual Square& HumanPlayer::selectSquare(const Piece&)':
/in/player.cpp:71:10: error: reference to local variable 'p' returned [-Werror=return-local-addr]
Square p;
^
/in/player.cpp: At global scope:
/in/player.cpp:99:20: error: use of deleted function 'HumanPlayer::HumanPlayer()'
static HumanPlayer impl;
^~~~
/in/player.cpp:24:7: note: 'HumanPlayer::HumanPlayer()' is implicitly deleted because the default definition would be ill-formed:
class HumanPlayer: public Player
^~~~~~~~~~~
/in/player.cpp:24:7: error: no matching function for call to 'Player::Player()'
In file included from /in/player.cpp:11:0:
/in/compile/player.h:14:4: note: candidate: Player::Player(Board*, Pool*)
Player(Board *board, Pool *pool): board(board), pool(pool){}
^~~~~~
/in/compile/player.h:14:4: note: candidate expects 2 arguments, 0 provided
/in/compile/player.h:7:7: note: candidate: constexpr Player::Player(const Player&)
class Player{
^~~~~~
/in/compile/player.h:7:7: note: candidate expects 1 argument, 0 provided
/in/compile/player.h:7:7: note: candidate: constexpr Player::Player(Player&&)
/in/compile/player.h:7:7: note: candidate expects 1 argument, 0 provided
cc1plus: all warnings being treated as errors