cc -Wall -Wextra -Wpedantic -Wshadow -std=c++20 -march=native -O3 -funroll-loops -DEVALFILE=\"/home/haroldchelubovski/OpenBench/Client/Networks/66281CFC\" schoenemann.cpp search.cpp timeman.cpp helper.cpp tt.cpp moveorder.cpp see.cpp tune.cpp datagen.cpp -o Schoenemann-405BDE81-66281CFC
In file included from tt.h:25,
                 from consts.h:25,
                 from schoenemann.h:26,
                 from schoenemann.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
In file included from tt.h:25,
                 from consts.h:25,
                 from timeman.h:22,
                 from search.h:25,
                 from search.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
chess.hpp: In instantiation of ‘void chess::Board::setFenInternal(std::string_view) [with bool ctor = true; std::string_view = std::basic_string_view<char>]’:
chess.hpp:2016:33:   required from here
chess.hpp:3350:28: warning: declaration of ‘start’ shadows a global declaration [-Wshadow]
 3350 |                 const auto start = side == king_side ? king_sq + 1 : king_sq - 1;
      |                            ^~~~~
search.cpp:22:25: note: shadowed declaration is here
   22 | std::chrono::time_point start = std::chrono::steady_clock::now();
      |                         ^~~~~
chess.hpp: In instantiation of ‘void chess::Board::setFenInternal(std::string_view) [with bool ctor = false; std::string_view = std::basic_string_view<char>]’:
chess.hpp:2019:67:   required from here
chess.hpp:3350:28: warning: declaration of ‘start’ shadows a global declaration [-Wshadow]
 3350 |                 const auto start = side == king_side ? king_sq + 1 : king_sq - 1;
      |                            ^~~~~
search.cpp:22:25: note: shadowed declaration is here
   22 | std::chrono::time_point start = std::chrono::steady_clock::now();
      |                         ^~~~~
In file included from tt.h:25,
                 from consts.h:25,
                 from timeman.h:22,
                 from timeman.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
In file included from tt.h:25,
                 from consts.h:25,
                 from helper.h:22,
                 from helper.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
In file included from tt.h:25,
                 from tt.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
In file included from tt.h:25,
                 from consts.h:25,
                 from moveorder.h:24,
                 from moveorder.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
In file included from tt.h:25,
                 from consts.h:25,
                 from see.h:22,
                 from see.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
In file included from tt.h:25,
                 from consts.h:25,
                 from datagen.h:22,
                 from datagen.cpp:20:
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(underlying)’:
chess.hpp:191:35: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  191 |         constexpr File(underlying file) : file(file) {}
      |                        ~~~~~~~~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::File::File(int)’:
chess.hpp:192:28: warning: declaration of ‘file’ shadows a member of ‘chess::File’ [-Wshadow]
  192 |         constexpr File(int file) : file(static_cast<underlying>(file)) {}
      |                        ~~~~^~~~
chess.hpp:238:20: note: shadowed declaration is here
  238 |         underlying file;
      |                    ^~~~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(int)’:
chess.hpp:333:30: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  333 |         constexpr Square(int sq) : sq(static_cast<underlying>(sq)) { assert(sq <= 64 && sq >= 0); }
      |                          ~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Square::Square(underlying)’:
chess.hpp:336:37: warning: declaration of ‘sq’ shadows a member of ‘chess::Square’ [-Wshadow]
  336 |         constexpr Square(underlying sq) : sq(sq) {}
      |                          ~~~~~~~~~~~^~
chess.hpp:569:20: note: shadowed declaration is here
  569 |         underlying sq;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::Bitboard::Bitboard(uint64_t)’:
chess.hpp:611:42: warning: declaration of ‘bits’ shadows a member of ‘chess::Bitboard’ [-Wshadow]
  611 |         constexpr Bitboard(std::uint64_t bits) : bits(bits) {}
      |                            ~~~~~~~~~~~~~~^~~~
chess.hpp:798:23: note: shadowed declaration is here
  798 |         std::uint64_t bits;
      |                       ^~~~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::PieceType::PieceType(underlying)’:
chess.hpp:1094:40: warning: declaration of ‘pt’ shadows a member of ‘chess::PieceType’ [-Wshadow]
 1094 |         constexpr PieceType(underlying pt) : pt(pt) {}
      |                             ~~~~~~~~~~~^~
chess.hpp:1180:20: note: shadowed declaration is here
 1180 |         underlying pt;
      |                    ^~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘constexpr chess::Piece::Piece(underlying)’:
chess.hpp:1210:36: warning: declaration of ‘piece’ shadows a member of ‘chess::Piece’ [-Wshadow]
 1210 |         constexpr Piece(underlying piece) : piece(piece) {}
      |                         ~~~~~~~~~~~^~~~~
chess.hpp:1301:20: note: shadowed declaration is here
 1301 |         underlying piece;
      |                    ^~~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In constructor ‘chess::Board::State::State(const chess::Board::U64&, const chess::Board::CastlingRights&, const chess::Square&, const uint8_t&, const chess::Piece&)’:
chess.hpp:1995:32: warning: declaration of ‘captured_piece’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1995 |                   const Piece &captured_piece)
      |                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~
chess.hpp:1992:19: note: shadowed declaration is here
 1992 |             Piece captured_piece;
      |                   ^~~~~~~~~~~~~~
chess.hpp:1994:108: warning: declaration of ‘half_moves’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                                             ~~~~~~~~~~~~~~~^~~~~~~~~~
chess.hpp:1991:21: note: shadowed declaration is here
 1991 |             uint8_t half_moves;
      |                     ^~~~~~~~~~
chess.hpp:1994:82: warning: declaration of ‘enpassant’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                                                    ~~~~~~~~~~~~~~^~~~~~~~~
chess.hpp:1990:20: note: shadowed declaration is here
 1990 |             Square enpassant;
      |                    ^~~~~~~~~
chess.hpp:1994:58: warning: declaration of ‘castling’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
chess.hpp:1989:28: note: shadowed declaration is here
 1989 |             CastlingRights castling;
      |                            ^~~~~~~~
chess.hpp:1994:30: warning: declaration of ‘hash’ shadows a member of ‘chess::Board::State’ [-Wshadow]
 1994 |             State(const U64 &hash, const CastlingRights &castling, const Square &enpassant, const uint8_t &half_moves,
      |                   ~~~~~~~~~~~^~~~
chess.hpp:1988:17: note: shadowed declaration is here
 1988 |             U64 hash;
      |                 ^~~~
chess.hpp: In lambda function:
chess.hpp:5433:64: warning: declaration of ‘std::string_view& san’ shadows a parameter [-Wshadow]
 5433 |             constexpr auto parse_castle = [](std::string_view &san, SanMoveInformation &info, char castling_char)
      |                                              ~~~~~~~~~~~~~~~~~~^~~
chess.hpp:5422:79: note: shadowed declaration is here
 5422 |         [[nodiscard]] static SanMoveInformation parseSanInfo(std::string_view san) noexcept(false)
      |                                                              ~~~~~~~~~~~~~~~~~^~~
/usr/bin/ld: /tmp/ccRWDrpB.o: warning: relocation against `_ZSt4cout' in read-only section `.text'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::thread::_State_impl<std::thread::_Invoker<std::tuple<main::{lambda()#1}> > >::~_State_impl()':
schoenemann.cpp:(.text+0x2f): undefined reference to `std::thread::_State::~_State()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `__tcf_0':
schoenemann.cpp:(.text+0xe9): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&) [clone .isra.0]':
schoenemann.cpp:(.text+0x14b): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: schoenemann.cpp:(.text+0x164): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: schoenemann.cpp:(.text+0x18c): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `void chess::Board::makeMove<false>(chess::Move) [clone .isra.0]':
schoenemann.cpp:(.text+0x215d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text+0x255e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text+0x2634): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::thread::_State_impl<std::thread::_Invoker<std::tuple<main::{lambda()#1}> > >::~_State_impl()':
schoenemann.cpp:(.text+0x1b): undefined reference to `std::thread::_State::~_State()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::thread::_State_impl<std::thread::_Invoker<std::tuple<main::{lambda()#1}> > >::~_State_impl()':
schoenemann.cpp:(.text+0x3d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&) [clone .isra.0]':
schoenemann.cpp:(.text+0x159): undefined reference to `std::ostream::flush()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()':
schoenemann.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED5Ev]+0x17): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
schoenemann.cpp:(.text.startup+0x5e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x85): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `main':
schoenemann.cpp:(.text.startup+0x210): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x242): undefined reference to `std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)())'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x416): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x458): undefined reference to `VTT for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x483): undefined reference to `std::ios_base::ios_base()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x499): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x4bc): undefined reference to `VTT for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x4de): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x4e5): undefined reference to `vtable for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x4ec): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x561): undefined reference to `std::locale::locale()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x568): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x5fc): undefined reference to `std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::_M_sync(char*, unsigned long, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x60b): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x64b): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x69c): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x6b0): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x6b7): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x6e4): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x6ec): undefined reference to `std::ostream::flush()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x6fa): undefined reference to `vtable for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x701): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x72f): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x73d): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x749): undefined reference to `std::locale::~locale()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x754): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x762): undefined reference to `VTT for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x788): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x7ed): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x810): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x843): undefined reference to `std::cin'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x879): undefined reference to `std::cin'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x87e): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::getline<char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x916): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xa7c): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xaad): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xade): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xb0f): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xb64): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xba4): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xdb2): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xdb7): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xde6): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xdfc): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xe10): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xfd0): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0xfeb): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1017): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1032): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x10c9): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1153): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1191): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x12d3): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x136d): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x14fd): undefined reference to `std::thread::detach()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1510): undefined reference to `std::terminate()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1559): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x15d3): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1666): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x16fa): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x174b): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x175f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x178a): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x17b9): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x17cc): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x17ed): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x189f): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1956): undefined reference to `std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1b17): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1b55): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1bb5): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1c0e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1cc4): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1d4f): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1e02): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1e42): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1e4c): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1e56): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1e60): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1e6a): undefined reference to `std::thread::join()'
/usr/bin/ld: /tmp/cc7MVeHl.o:schoenemann.cpp:(.text.startup+0x1e74): more undefined references to `std::thread::join()' follow
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `main':
schoenemann.cpp:(.text.startup+0x1f53): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1f7a): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1fc5): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x1fd3): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x203f): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x20ad): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2126): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2151): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2165): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2198): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x21b4): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x21f5): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x220c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2219): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2226): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2280): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x22b1): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x22bb): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2484): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2506): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x252f): undefined reference to `std::thread::join()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x256a): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2589): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x25b7): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2602): undefined reference to `std::__throw_bad_array_new_length()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2632): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2637): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x263c): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2641): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x264d): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2652): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2657): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x265c): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2668): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2674): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2680): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x268c): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x26bc): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/cc7MVeHl.o:schoenemann.cpp:(.text.startup+0x26c8): more undefined references to `std::__throw_length_error(char const*)' follow
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `_GLOBAL__sub_I_searcher':
schoenemann.cpp:(.text.startup+0x27b6): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x27bd): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2a6b): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2aae): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text.startup+0x2aba): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (Search::*(Search*, chess::Board, bool))(chess::Board&, bool)> > > >::~_State_impl()':
schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED2Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x38): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED2Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x4d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED2Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x56): undefined reference to `std::thread::_State::~_State()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::thread::_State_impl<std::thread::_Invoker<std::tuple<std::_Bind<void (Search::*(Search*, chess::Board, bool))(chess::Board&, bool)> > > >::~_State_impl()':
schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED0Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x38): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED0Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x4d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED0Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x55): undefined reference to `std::thread::_State::~_State()'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED0Ev[_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEED5Ev]+0x63): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `network::network()':
schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x103): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x117): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x130): undefined reference to `std::cout'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x144): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x158): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x165): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x17c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x187): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN7networkC2Ev[_ZN7networkC5Ev]+0x19b): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `chess::Board::~Board()':
schoenemann.cpp:(.text._ZN5chess5BoardD2Ev[_ZN5chess5BoardD5Ev]+0x2d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5BoardD2Ev[_ZN5chess5BoardD5Ev]+0x43): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `chess::operator<<(std::ostream&, chess::Board const&)':
schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x5c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0xaf): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0xce): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0xeb): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x118): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x12c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x141): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x151): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x165): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x2ca): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x2da): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x2f2): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x306): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x31b): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x32b): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x33f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x35c): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x36c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x380): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x38f): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x39f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x3b3): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x3c2): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x3d2): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x403): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x40b): undefined reference to `std::ostream::flush()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x61c): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x6cb): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x718): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x75c): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x7a6): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x7f0): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x83a): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x885): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x8cf): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x901): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x956): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x95b): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x972): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x97e): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x98a): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x999): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x9d1): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chesslsERSoRKNS_5BoardE[_ZN5chesslsERSoRKNS_5BoardE]+0x9e8): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `chess::attacks::initAttacks()':
schoenemann.cpp:(.text._ZN5chess7attacks11initAttacksEv[_ZN5chess7attacks11initAttacksEv]+0x2c0): undefined reference to `std::__throw_bad_function_call()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess7attacks11initAttacksEv[_ZN5chess7attacks11initAttacksEv]+0x2c5): undefined reference to `std::__throw_bad_function_call()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `int __gnu_cxx::__stoa<long, int, char, int>(long (*)(char const*, char**, int), char const*, char const*, unsigned long*, int)':
schoenemann.cpp:(.text._ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_[_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_]+0x85): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_[_ZN9__gnu_cxx6__stoaIlicJiEEET0_PFT_PKT1_PPS3_DpT2_EPKcS5_PmS9_]+0x8f): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::substr(unsigned long, unsigned long) const':
schoenemann.cpp:(.text._ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm[_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm]+0x8e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm[_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm]+0xb1): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm[_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm]+0xc9): undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm[_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm]+0xd5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::~basic_stringbuf()':
schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x3): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x24): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x2b): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x38): undefined reference to `std::locale::~locale()'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::~basic_stringbuf()':
schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x3): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x24): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x2b): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x37): undefined reference to `std::locale::~locale()'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev[_ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED5Ev]+0x45): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `chess::uci::moveToUci[abi:cxx11](chess::Move const&, bool)':
schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x4): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x80): undefined reference to `std::ios_base::ios_base()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x87): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x9c): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0xc6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0xe8): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0xef): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0xf6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x118): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x11f): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x12c): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x137): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x187): undefined reference to `std::locale::locale()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x196): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x1d4): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x218): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x231): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x273): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x28b): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x327): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x32e): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x376): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x37d): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x38c): undefined reference to `std::locale::~locale()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x393): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x39a): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x3a1): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x3a8): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x3af): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x3b6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x3bd): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x3fe): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x485): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x4a1): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x572): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x5a5): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x5cc): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x603): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x61b): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x69b): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x6b4): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x6c0): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x6d6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x6dd): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x6f9): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x70e): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x72e): undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_stringstream()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x748): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x74f): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x756): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x75d): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x788): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb[_ZN5chess3uci9moveToUciB5cxx11ERKNS_4MoveEb]+0x7b6): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::vector<std::thread, std::allocator<std::thread> >::~vector()':
schoenemann.cpp:(.text._ZNSt6vectorISt6threadSaIS0_EED2Ev[_ZNSt6vectorISt6threadSaIS0_EED5Ev]+0x115): undefined reference to `std::terminate()'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6vectorISt6threadSaIS0_EED2Ev[_ZNSt6vectorISt6threadSaIS0_EED5Ev]+0xf2): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::~vector()':
schoenemann.cpp:(.text._ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev[_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED5Ev]+0x39): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev[_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED5Ev]+0x5b): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `std::thread::thread<std::_Bind<void (Search::*(Search*, chess::Board, bool))(chess::Board&, bool)>, , void>(std::_Bind<void (Search::*(Search*, chess::Board, bool))(chess::Board&, bool)>&&)':
schoenemann.cpp:(.text._ZNSt6threadC2ISt5_BindIFM6SearchFvRN5chess5BoardEbEPS2_S4_bEEJEvEEOT_DpOT0_[_ZNSt6threadC5ISt5_BindIFM6SearchFvRN5chess5BoardEbEPS2_S4_bEEJEvEEOT_DpOT0_]+0x1f): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZNSt6threadC2ISt5_BindIFM6SearchFvRN5chess5BoardEbEPS2_S4_bEEJEvEEOT_DpOT0_[_ZNSt6threadC5ISt5_BindIFM6SearchFvRN5chess5BoardEbEPS2_S4_bEEJEvEEOT_DpOT0_]+0x1ac): undefined reference to `std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)())'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `void chess::Board::setFenInternal<true>(std::basic_string_view<char, std::char_traits<char> >)':
schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x562): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x620): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xf01): undefined reference to `__cxa_allocate_exception'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xf13): undefined reference to `std::runtime_error::runtime_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xf1a): undefined reference to `std::runtime_error::~runtime_error()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xf21): undefined reference to `typeinfo for std::runtime_error'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xf29): undefined reference to `__cxa_throw'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1345): undefined reference to `__cxa_allocate_exception'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1357): undefined reference to `std::runtime_error::runtime_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1701): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1756): undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1928): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1a41): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1a84): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1be1): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1cea): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1d6a): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1d6f): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e0d): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e19): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e25): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e31): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e3d): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1eac): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1eb8): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1ee3): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1eef): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f61): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f6c): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f71): undefined reference to `__cxa_end_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1fa2): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1fad): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1fb2): undefined reference to `__cxa_end_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb1EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1fd6): undefined reference to `__cxa_free_exception'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `chess::Board::Board(std::basic_string_view<char, std::char_traits<char> >, bool)':
schoenemann.cpp:(.text._ZN5chess5BoardC2ESt17basic_string_viewIcSt11char_traitsIcEEb[_ZN5chess5BoardC5ESt17basic_string_viewIcSt11char_traitsIcEEb]+0xe2): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5BoardC2ESt17basic_string_viewIcSt11char_traitsIcEEb[_ZN5chess5BoardC5ESt17basic_string_viewIcSt11char_traitsIcEEb]+0x2d3): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5BoardC2ESt17basic_string_viewIcSt11char_traitsIcEEb[_ZN5chess5BoardC5ESt17basic_string_viewIcSt11char_traitsIcEEb]+0x34c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5BoardC2ESt17basic_string_viewIcSt11char_traitsIcEEb[_ZN5chess5BoardC5ESt17basic_string_viewIcSt11char_traitsIcEEb]+0x361): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `void chess::Board::setFenInternal<false>(std::basic_string_view<char, std::char_traits<char> >)':
schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x58d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x654): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xe08): undefined reference to `__cxa_allocate_exception'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0xe1a): undefined reference to `std::runtime_error::runtime_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1245): undefined reference to `__cxa_allocate_exception'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1257): undefined reference to `std::runtime_error::runtime_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x125e): undefined reference to `std::runtime_error::~runtime_error()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1265): undefined reference to `typeinfo for std::runtime_error'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x126d): undefined reference to `__cxa_throw'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1783): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x17f6): undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1a17): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1b49): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1ba0): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1c8d): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1db8): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e7c): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e81): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e8d): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1e99): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f3c): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f67): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f73): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f7f): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f8b): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1f97): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x1fe4): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x2037): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x2042): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x2047): undefined reference to `__cxa_end_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x2077): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x2082): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x2087): undefined reference to `__cxa_end_catch'
/usr/bin/ld: schoenemann.cpp:(.text._ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE[_ZN5chess5Board14setFenInternalILb0EEEvSt17basic_string_viewIcSt11char_traitsIcEE]+0x20a8): undefined reference to `__cxa_free_exception'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `main.cold':
schoenemann.cpp:(.text.unlikely+0x21): undefined reference to `std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream()'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x44): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x67): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0xc4): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0xd1): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0xe9): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x107): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x12c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x131): undefined reference to `__cxa_rethrow'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x175): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x1a5): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x1b3): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x1bf): undefined reference to `std::locale::~locale()'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x1d1): undefined reference to `VTT for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x1ec): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x1ff): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x251): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x27b): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: schoenemann.cpp:(.text.unlikely+0x29b): undefined reference to `__cxa_end_catch'
/usr/bin/ld: /tmp/cc7MVeHl.o: in function `_GLOBAL__sub_I_searcher.cold':
schoenemann.cpp:(.text.unlikely+0x33a): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro._ZTIFN5chess8BitboardENS_6SquareES0_E[_ZTIFN5chess8BitboardENS_6SquareES0_E]+0x0): undefined reference to `vtable for __cxxabiv1::__function_type_info'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro._ZTIN5chess5BoardE[_ZTIN5chess5BoardE]+0x0): undefined reference to `vtable for __cxxabiv1::__class_type_info'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro+0x0): undefined reference to `vtable for __cxxabiv1::__si_class_type_info'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro+0x10): undefined reference to `typeinfo for std::thread::_State'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro+0x18): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro._ZTINSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEEE[_ZTINSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEEE]+0x0): undefined reference to `vtable for __cxxabiv1::__si_class_type_info'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro._ZTINSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEEE[_ZTINSt6thread11_State_implINS_8_InvokerISt5tupleIJSt5_BindIFM6SearchFvRN5chess5BoardEbEPS4_S6_bEEEEEEEE]+0x10): undefined reference to `typeinfo for std::thread::_State'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.ro._ZTIPFN5chess8BitboardENS_6SquareES0_E[_ZTIPFN5chess8BitboardENS_6SquareES0_E]+0x0): undefined reference to `vtable for __cxxabiv1::__pointer_type_info'
/usr/bin/ld: /tmp/cc7MVeHl.o:(.data.rel.local.DW.ref.__gxx_personality_v0[DW.ref.__gxx_personality_v0]+0x0): undefined reference to `__gxx_personality_v0'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `__tcf_0':
search.cpp:(.text+0x99): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
search.cpp:(.text+0x135): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x160): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `void chess::Board::makeMove<false>(chess::Move) [clone .isra.0]':
search.cpp:(.text+0x3d11): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4418): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x44cf): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::initLMR()':
search.cpp:(.text+0x46da): undefined reference to `log'
/usr/bin/ld: search.cpp:(.text+0x46ec): undefined reference to `log'
/usr/bin/ld: search.cpp:(.text+0x4746): undefined reference to `log'
/usr/bin/ld: search.cpp:(.text+0x4759): undefined reference to `log'
/usr/bin/ld: search.cpp:(.text+0x47a9): undefined reference to `log'
/usr/bin/ld: /tmp/ccgCNLUn.o:search.cpp:(.text+0x47bc): more undefined references to `log' follow
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::getPVLine[abi:cxx11]()':
search.cpp:(.text+0x4ca8): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4cc0): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4d55): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4d9f): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4e1c): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4e88): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x4f0a): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: search.cpp:(.text+0x4f1a): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: search.cpp:(.text+0x4f59): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: search.cpp:(.text+0x4f65): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: search.cpp:(.text+0x4f71): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: search.cpp:(.text+0x4f7d): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::qs(int, int, chess::Board&, int)':
search.cpp:(.text+0x5f03): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::pvs(int, int, int, int, chess::Board&, bool)':
search.cpp:(.text+0x64d8): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: search.cpp:(.text+0x7e8d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x7f79): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x800b): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::aspiration(int, int, chess::Board&)':
search.cpp:(.text+0x8099): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::iterativeDeepening(chess::Board&, bool)':
search.cpp:(.text+0x812a): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: search.cpp:(.text+0x8174): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: search.cpp:(.text+0x81fe): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: search.cpp:(.text+0x8210): undefined reference to `std::cout'
/usr/bin/ld: search.cpp:(.text+0x8242): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x824c): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: search.cpp:(.text+0x8263): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x826e): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: search.cpp:(.text+0x8285): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x8290): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: search.cpp:(.text+0x82a7): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x82d9): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: search.cpp:(.text+0x82f0): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x830f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x833e): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: search.cpp:(.text+0x8346): undefined reference to `std::ostream::flush()'
/usr/bin/ld: search.cpp:(.text+0x8367): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x8374): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: search.cpp:(.text+0x83cf): undefined reference to `std::cout'
/usr/bin/ld: search.cpp:(.text+0x83fd): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x841f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x844c): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: search.cpp:(.text+0x8454): undefined reference to `std::ostream::flush()'
/usr/bin/ld: search.cpp:(.text+0x8471): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text+0x8494): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: search.cpp:(.text+0x84d1): undefined reference to `std::cout'
/usr/bin/ld: search.cpp:(.text+0x84e5): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x8508): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: search.cpp:(.text+0x8538): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: search.cpp:(.text+0x8540): undefined reference to `std::ostream::flush()'
/usr/bin/ld: search.cpp:(.text+0x8568): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: search.cpp:(.text+0x858f): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: search.cpp:(.text+0x85a9): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: search.cpp:(.text+0x85ae): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long)':
search.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm]+0x6b): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: search.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm]+0x89): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm]+0x115): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm]+0x1c1): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::getPVLine[abi:cxx11]() [clone .cold]':
search.cpp:(.text.unlikely+0x1c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text.unlikely+0x34): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text.unlikely+0x4a): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `Search::iterativeDeepening(chess::Board&, bool) [clone .cold]':
search.cpp:(.text.unlikely+0xb7): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: search.cpp:(.text.unlikely+0xca): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccgCNLUn.o:search.cpp:(.text.unlikely+0xdd): more undefined references to `operator delete(void*, unsigned long)' follow
/usr/bin/ld: /tmp/ccgCNLUn.o: in function `_GLOBAL__sub_I_start':
search.cpp:(.text.startup+0x16): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: search.cpp:(.text.startup+0x1d): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: search.cpp:(.text.startup+0x1ca): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: search.cpp:(.text.startup+0x201): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: search.cpp:(.text.startup+0x236): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: search.cpp:(.text.startup+0x242): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccgCNLUn.o:(.data.rel.ro+0x0): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: /tmp/ccdiRNcf.o: in function `__tcf_0':
timeman.cpp:(.text+0x29): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccdiRNcf.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
timeman.cpp:(.text.startup+0x5e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: timeman.cpp:(.text.startup+0x85): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/ccdiRNcf.o: in function `_GLOBAL__sub_I__Z14getTimeForMovev':
timeman.cpp:(.text.startup+0xa6): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: timeman.cpp:(.text.startup+0xad): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: timeman.cpp:(.text.startup+0x284): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: timeman.cpp:(.text.startup+0x2b9): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: timeman.cpp:(.text.startup+0x2c5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccdiRNcf.o: in function `_GLOBAL__sub_I__Z14getTimeForMovev.cold':
timeman.cpp:(.text.unlikely+0x6c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `__tcf_0':
helper.cpp:(.text+0x29): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `uciPrint()':
helper.cpp:(.text+0x64): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x7d): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x84): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0xaf): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0xb7): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0xce): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0xfc): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x104): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x11b): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x149): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x164): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x1a4): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x1e4): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x213): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `transpositionTableTest(chess::Board&)':
helper.cpp:(.text+0x2ce): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x316): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x331): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x345): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x350): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x367): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x376): undefined reference to `std::ostream& std::ostream::_M_insert<unsigned long>(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x3a7): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x3af): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x3ce): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x3e2): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x3f6): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x402): undefined reference to `std::ostream::operator<<(short)'
/usr/bin/ld: helper.cpp:(.text+0x433): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x43b): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x45a): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x46e): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x482): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x48e): undefined reference to `std::ostream::operator<<(short)'
/usr/bin/ld: helper.cpp:(.text+0x4be): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x4c6): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x4e7): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x4fb): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x50f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x51a): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: helper.cpp:(.text+0x54b): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x553): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x595): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x5a9): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x5bd): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x60a): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x620): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x646): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x673): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x67b): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x6c8): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x704): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x743): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x757): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x75e): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x78b): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x793): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x7b2): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x7b9): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x7e6): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x7ee): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x80d): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x814): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x841): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x849): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x86a): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x871): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x89e): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x8a6): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x8bb): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x8d5): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x918): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x955): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x9a4): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x9e4): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: /tmp/ccb3zG04.o:helper.cpp:(.text+0xa24): more undefined references to `std::ctype<char>::_M_widen_init() const' follow
/usr/bin/ld: /tmp/ccb3zG04.o: in function `transpositionTableTest(chess::Board&)':
helper.cpp:(.text+0xb11): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0xb2c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0xb4f): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0xb54): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0xb5b): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0xb62): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0xb8a): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0xb8f): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0xbb4): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0xc0c): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `void chess::Board::setFenInternal<false>(std::basic_string_view<char, std::char_traits<char> >) [clone .constprop.0]':
helper.cpp:(.text+0x11a6): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x1264): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x22c6): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x231b): undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)'
/usr/bin/ld: helper.cpp:(.text+0x250d): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x2655): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x2698): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x27f1): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: helper.cpp:(.text+0x28f4): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x2980): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: helper.cpp:(.text+0x2985): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: helper.cpp:(.text+0x29e8): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2a92): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2a9e): undefined reference to `std::__throw_out_of_range(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2ac9): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2af3): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2aff): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2b0b): undefined reference to `std::__throw_invalid_argument(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2b17): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: helper.cpp:(.text+0x2b23): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `testCommand()':
helper.cpp:(.text+0x2c70): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x2e80): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x2eef): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x2f06): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `runBenchmark()':
helper.cpp:(.text+0x302f): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x3265): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x32a7): undefined reference to `std::chrono::_V2::system_clock::now()'
/usr/bin/ld: helper.cpp:(.text+0x3409): undefined reference to `std::chrono::_V2::system_clock::now()'
/usr/bin/ld: helper.cpp:(.text+0x341b): undefined reference to `std::cout'
/usr/bin/ld: helper.cpp:(.text+0x345c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x3467): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: helper.cpp:(.text+0x347e): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x348c): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: helper.cpp:(.text+0x34a3): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text+0x34ae): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: helper.cpp:(.text+0x34df): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: helper.cpp:(.text+0x34e7): undefined reference to `std::ostream::flush()'
/usr/bin/ld: helper.cpp:(.text+0x350b): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x3526): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text+0x353d): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: helper.cpp:(.text+0x3586): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `uciPrint()':
helper.cpp:(.text+0x157): undefined reference to `std::ostream::flush()'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `transpositionTableTest(chess::Board&)':
helper.cpp:(.text+0xba5): undefined reference to `std::ostream::flush()'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
helper.cpp:(.text.startup+0x5e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text.startup+0x85): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `_GLOBAL__sub_I__Z22transpositionTableTestRN5chess5BoardE':
helper.cpp:(.text.startup+0xa6): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: helper.cpp:(.text.startup+0xad): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: helper.cpp:(.text.startup+0x284): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: helper.cpp:(.text.startup+0x2b9): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: helper.cpp:(.text.startup+0x2c5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `chess::operator<<(std::ostream&, chess::Square const&)':
helper.cpp:(.text._ZN5chesslsERSoRKNS_6SquareE[_ZN5chesslsERSoRKNS_6SquareE]+0x41): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: helper.cpp:(.text._ZN5chesslsERSoRKNS_6SquareE[_ZN5chesslsERSoRKNS_6SquareE]+0x58): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text._ZN5chesslsERSoRKNS_6SquareE[_ZN5chesslsERSoRKNS_6SquareE]+0x7f): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `transpositionTableTest(chess::Board&) [clone .cold]':
helper.cpp:(.text.unlikely+0x15): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `void chess::Board::setFenInternal<false>(std::basic_string_view<char, std::char_traits<char> >) [clone .constprop.0] [clone .cold]':
helper.cpp:(.text.unlikely+0x2c): undefined reference to `__cxa_allocate_exception'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x3e): undefined reference to `std::runtime_error::runtime_error(char const*)'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x45): undefined reference to `std::runtime_error::~runtime_error()'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x4c): undefined reference to `typeinfo for std::runtime_error'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x54): undefined reference to `__cxa_throw'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x77): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x7c): undefined reference to `__cxa_end_catch'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x8f): undefined reference to `__cxa_free_exception'
/usr/bin/ld: helper.cpp:(.text.unlikely+0xa1): undefined reference to `__cxa_allocate_exception'
/usr/bin/ld: helper.cpp:(.text.unlikely+0xb3): undefined reference to `std::runtime_error::runtime_error(char const*)'
/usr/bin/ld: helper.cpp:(.text.unlikely+0xd0): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: helper.cpp:(.text.unlikely+0xd5): undefined reference to `__cxa_end_catch'
/usr/bin/ld: helper.cpp:(.text.unlikely+0xee): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x113): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `testCommand() [clone .cold]':
helper.cpp:(.text.unlikely+0x149): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: helper.cpp:(.text.unlikely+0x160): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o: in function `runBenchmark() [clone .cold]':
helper.cpp:(.text.unlikely+0x199): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccb3zG04.o:helper.cpp:(.text.unlikely+0x1b4): more undefined references to `operator delete(void*, unsigned long)' follow
/usr/bin/ld: /tmp/cc5o2NEQ.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
moveorder.cpp:(.text.startup+0x5e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: moveorder.cpp:(.text.startup+0x85): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/cc5o2NEQ.o: in function `_GLOBAL__sub_I__Z10orderMovesRN5chess8MovelistEP4HashRNS_5BoardEPiNS_4MoveEi':
moveorder.cpp:(.text.startup+0xa6): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: moveorder.cpp:(.text.startup+0xad): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: moveorder.cpp:(.text.startup+0x284): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: moveorder.cpp:(.text.startup+0x2b9): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: moveorder.cpp:(.text.startup+0x2c5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/cc5o2NEQ.o: in function `_GLOBAL__sub_I__Z10orderMovesRN5chess8MovelistEP4HashRNS_5BoardEPiNS_4MoveEi.cold':
moveorder.cpp:(.text.unlikely+0x6c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccHNVRYi.o: in function `__tcf_0':
see.cpp:(.text+0x29): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccHNVRYi.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
see.cpp:(.text.startup+0x5e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: see.cpp:(.text.startup+0x85): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/ccHNVRYi.o: in function `_GLOBAL__sub_I__Z13getPieceValueRKN5chess5BoardERNS_4MoveE':
see.cpp:(.text.startup+0xa6): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: see.cpp:(.text.startup+0xad): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: see.cpp:(.text.startup+0x284): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: see.cpp:(.text.startup+0x2b9): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: see.cpp:(.text.startup+0x2c5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccHNVRYi.o: in function `_GLOBAL__sub_I__Z13getPieceValueRKN5chess5BoardERNS_4MoveE.cold':
see.cpp:(.text.unlikely+0x6c): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `addEngineParameter(EngineParameter*)':
tune.cpp:(.text+0x4f4): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x51c): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x546): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `engineParameterToUCI[abi:cxx11]()':
tune.cpp:(.text+0x554): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0x5a1): undefined reference to `std::ios_base::ios_base()'
/usr/bin/ld: tune.cpp:(.text+0x5a8): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x5c6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x5cd): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0x5ec): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x610): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: tune.cpp:(.text+0x617): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x61e): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x63b): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: tune.cpp:(.text+0x642): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x64f): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x65a): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x6af): undefined reference to `std::locale::locale()'
/usr/bin/ld: tune.cpp:(.text+0x6b6): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x6f2): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: tune.cpp:(.text+0x733): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x742): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x759): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x765): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: tune.cpp:(.text+0x779): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x795): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x7a4): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x7bb): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x7c7): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: tune.cpp:(.text+0x7db): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x867): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x86e): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8b6): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x8c2): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8c9): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8d3): undefined reference to `std::locale::~locale()'
/usr/bin/ld: tune.cpp:(.text+0x8da): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8e1): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8e8): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8ef): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x8f6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: /tmp/ccrQlKR4.o:tune.cpp:(.text+0x8fd): more undefined references to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >' follow
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `engineParameterToUCI[abi:cxx11]()':
tune.cpp:(.text+0x93d): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: tune.cpp:(.text+0x974): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0x9a6): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x9d9): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0xa6b): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: tune.cpp:(.text+0xac4): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0xadc): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0xb2e): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: tune.cpp:(.text+0xb47): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: tune.cpp:(.text+0xb53): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `engineParameterToSpsaInput[abi:cxx11]()':
tune.cpp:(.text+0xb9c): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0xbf7): undefined reference to `std::ios_base::ios_base()'
/usr/bin/ld: tune.cpp:(.text+0xbfe): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xc14): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xc1b): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0xc35): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xc60): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: tune.cpp:(.text+0xc67): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xc6e): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xc7e): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xca0): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: tune.cpp:(.text+0xca7): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xcb6): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xcc1): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xcd3): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xd1f): undefined reference to `std::locale::locale()'
/usr/bin/ld: tune.cpp:(.text+0xd62): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: tune.cpp:(.text+0xda2): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xdb5): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xdc9): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xdd9): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xdea): undefined reference to `std::ostream& std::ostream::_M_insert<double>(double)'
/usr/bin/ld: tune.cpp:(.text+0xdfd): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xe0e): undefined reference to `std::ostream& std::ostream::_M_insert<double>(double)'
/usr/bin/ld: tune.cpp:(.text+0xe21): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xe33): undefined reference to `std::ostream& std::ostream::_M_insert<double>(double)'
/usr/bin/ld: tune.cpp:(.text+0xe46): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xe70): undefined reference to `std::ostream& std::ostream::_M_insert<double>(double)'
/usr/bin/ld: tune.cpp:(.text+0xe83): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xe97): undefined reference to `std::ostream& std::ostream::_M_insert<double>(double)'
/usr/bin/ld: tune.cpp:(.text+0xeab): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: tune.cpp:(.text+0xf45): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xf4c): undefined reference to `vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xf97): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0xfa5): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfb1): undefined reference to `std::locale::~locale()'
/usr/bin/ld: tune.cpp:(.text+0xfb8): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfbf): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfc6): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfcd): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfd4): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfdb): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0xfe2): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text+0x1032): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: tune.cpp:(.text+0x1086): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x10bf): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x1153): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: tune.cpp:(.text+0x11c7): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x11ed): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text+0x1250): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: tune.cpp:(.text+0x1270): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: tune.cpp:(.text+0x127c): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `std::vector<EngineParameter*, std::allocator<EngineParameter*> >::~vector()':
tune.cpp:(.text._ZNSt6vectorIP15EngineParameterSaIS1_EED2Ev[_ZNSt6vectorIP15EngineParameterSaIS1_EED5Ev]+0x13): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `engineParameterToUCI[abi:cxx11]() [clone .cold]':
tune.cpp:(.text.unlikely+0x17): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x21): undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_stringstream()'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x30): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x37): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x5c): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x69): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x83): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x8c): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x93): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x9a): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0xa1): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: /tmp/ccrQlKR4.o:tune.cpp:(.text.unlikely+0xa8): more undefined references to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >' follow
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `engineParameterToSpsaInput[abi:cxx11]() [clone .cold]':
tune.cpp:(.text.unlikely+0x102): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x10e): undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_stringstream()'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x11d): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x124): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x151): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x15d): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x177): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x180): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x187): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x18e): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: tune.cpp:(.text.unlikely+0x195): undefined reference to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: /tmp/ccrQlKR4.o:tune.cpp:(.text.unlikely+0x19c): more undefined references to `VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >' follow
/usr/bin/ld: /tmp/ccrQlKR4.o: in function `_GLOBAL__sub_I_engineParameter':
tune.cpp:(.text.startup+0x18): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: tune.cpp:(.text.startup+0x1f): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: /tmp/ccrQlKR4.o:(.data.rel.ro+0x0): undefined reference to `vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `__tcf_0':
datagen.cpp:(.text+0x29): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `void chess::Board::makeMove<false>(chess::Move) [clone .isra.0]':
datagen.cpp:(.text+0x2064): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x248c): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x2562): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `generate(chess::Board&)':
datagen.cpp:(.text+0x2974): undefined reference to `std::random_device::_M_init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: datagen.cpp:(.text+0x2992): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x299c): undefined reference to `std::random_device::_M_getval()'
/usr/bin/ld: datagen.cpp:(.text+0x2b10): undefined reference to `vtable for std::basic_ios<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x2b18): undefined reference to `std::ios_base::ios_base()'
/usr/bin/ld: datagen.cpp:(.text+0x2b1f): undefined reference to `VTT for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x2b3d): undefined reference to `VTT for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x2b72): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: datagen.cpp:(.text+0x2b79): undefined reference to `vtable for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x2b9d): undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::basic_filebuf()'
/usr/bin/ld: datagen.cpp:(.text+0x2ba8): undefined reference to `std::basic_ios<char, std::char_traits<char> >::init(std::basic_streambuf<char, std::char_traits<char> >*)'
/usr/bin/ld: datagen.cpp:(.text+0x2bbc): undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::open(char const*, std::_Ios_Openmode)'
/usr/bin/ld: datagen.cpp:(.text+0x2bdd): undefined reference to `std::basic_ios<char, std::char_traits<char> >::clear(std::_Ios_Iostate)'
/usr/bin/ld: datagen.cpp:(.text+0x2bf2): undefined reference to `std::__basic_file<char>::is_open() const'
/usr/bin/ld: datagen.cpp:(.text+0x2c10): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: datagen.cpp:(.text+0x3436): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: datagen.cpp:(.text+0x3455): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x3473): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x34e2): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x3cb4): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x3cd9): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x41e6): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4276): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x43c1): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4448): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x44f3): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4543): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x48f0): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4913): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4936): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4959): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccRWDrpB.o:datagen.cpp:(.text+0x4980): more undefined references to `operator delete(void*, unsigned long)' follow
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `generate(chess::Board&)':
datagen.cpp:(.text+0x4b7f): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4be0): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4c4c): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4cac): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text+0x4f63): undefined reference to `std::cout'
/usr/bin/ld: datagen.cpp:(.text+0x4f77): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: datagen.cpp:(.text+0x4f7e): undefined reference to `std::cout'
/usr/bin/ld: datagen.cpp:(.text+0x4fb3): undefined reference to `std::basic_ios<char, std::char_traits<char> >::clear(std::_Ios_Iostate)'
/usr/bin/ld: datagen.cpp:(.text+0x4fdb): undefined reference to `std::chrono::_V2::steady_clock::now()'
/usr/bin/ld: datagen.cpp:(.text+0x500f): undefined reference to `std::cout'
/usr/bin/ld: datagen.cpp:(.text+0x5035): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: datagen.cpp:(.text+0x5040): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: datagen.cpp:(.text+0x5057): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: datagen.cpp:(.text+0x506b): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)'
/usr/bin/ld: datagen.cpp:(.text+0x507d): undefined reference to `std::ostream::operator<<(int)'
/usr/bin/ld: datagen.cpp:(.text+0x5125): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: datagen.cpp:(.text+0x5149): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: datagen.cpp:(.text+0x5158): undefined reference to `vtable for std::basic_filebuf<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x516f): undefined reference to `std::ostream::flush()'
/usr/bin/ld: datagen.cpp:(.text+0x517f): undefined reference to `vtable for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x5198): undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::close()'
/usr/bin/ld: datagen.cpp:(.text+0x51a7): undefined reference to `vtable for std::basic_streambuf<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x51ac): undefined reference to `std::__basic_file<char>::~__basic_file()'
/usr/bin/ld: datagen.cpp:(.text+0x51c1): undefined reference to `std::locale::~locale()'
/usr/bin/ld: datagen.cpp:(.text+0x51cb): undefined reference to `VTT for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x51d2): undefined reference to `VTT for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text+0x51f3): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: datagen.cpp:(.text+0x51fd): undefined reference to `std::random_device::_M_fini()'
/usr/bin/ld: datagen.cpp:(.text+0x5214): undefined reference to `std::ctype<char>::_M_widen_init() const'
/usr/bin/ld: datagen.cpp:(.text+0x5238): undefined reference to `std::ostream::put(char)'
/usr/bin/ld: datagen.cpp:(.text+0x5240): undefined reference to `std::ostream::flush()'
/usr/bin/ld: datagen.cpp:(.text+0x525d): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text+0x526b): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text+0x5270): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text+0x527e): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text+0x5283): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: /tmp/ccRWDrpB.o:datagen.cpp:(.text+0x5345): more undefined references to `std::__throw_bad_alloc()' follow
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `generate(chess::Board&)':
datagen.cpp:(.text+0x5460): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x546c): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x5478): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x547d): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: datagen.cpp:(.text+0x5489): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x5495): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x54c6): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x54f1): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text+0x54fd): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o:datagen.cpp:(.text+0x5509): more undefined references to `std::__throw_length_error(char const*)' follow
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `generate(chess::Board&)':
datagen.cpp:(.text+0x5526): undefined reference to `std::__throw_bad_cast()'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string<std::allocator<char> >(char const*, std::allocator<char> const&) [clone .constprop.0]':
datagen.cpp:(.text.startup+0x5e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.startup+0x85): undefined reference to `std::__throw_logic_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `_GLOBAL__sub_I__Z8generateRN5chess5BoardE':
datagen.cpp:(.text.startup+0xa6): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: datagen.cpp:(.text.startup+0xad): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: datagen.cpp:(.text.startup+0x284): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.startup+0x2b9): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text.startup+0x2c5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(char const*) [clone .isra.0]':
datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc.isra.0[_ZNK5chess5Board6getFenB5cxx11Eb]+0xb7): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc.isra.0[_ZNK5chess5Board6getFenB5cxx11Eb]+0x101): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc.isra.0[_ZNK5chess5Board6getFenB5cxx11Eb]+0x129): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc.isra.0[_ZNK5chess5Board6getFenB5cxx11Eb]+0x158): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc.isra.0[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1d5): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKc.isra.0[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1e1): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::push_back(char)':
datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc]+0x81): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc]+0xa9): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc]+0xc6): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc]+0xf7): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc]+0x160): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9push_backEc]+0x178): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `chess::Board::getFen[abi:cxx11](bool) const':
datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x3b): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x72): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x2b2): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x36a): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x587): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x603): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x654): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x7f7): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x825): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x851): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x867): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x8cc): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x93d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0xce1): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0xdba): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0xe3a): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0xe58): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0xf89): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x108b): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x10f7): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x12c7): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1532): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x156c): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1592): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x15c7): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1624): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x165f): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x16c8): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x16f7): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x173f): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1780): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x17c8): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x17e8): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x17f6): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1833): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x188a): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x189a): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x18cb): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1963): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x19d8): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x19ec): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1a5a): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1a7e): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1ae8): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1bac): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1ca1): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1cad): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1cc8): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1cf2): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1cfe): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o:datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1d0a): more undefined references to `std::__throw_length_error(char const*)' follow
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `chess::Board::getFen[abi:cxx11](bool) const':
datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1dcc): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1dff): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1e13): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNK5chess5Board6getFenB5cxx11Eb[_ZNK5chess5Board6getFenB5cxx11Eb]+0x1e38): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace(unsigned long, unsigned long, char const*, unsigned long)':
datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm]+0x1ea): undefined reference to `operator new(unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm]+0x2bc): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm]+0x2fd): undefined reference to `std::__throw_bad_alloc()'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm]+0x44e): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: datagen.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm]+0x45a): undefined reference to `std::__throw_length_error(char const*)'
/usr/bin/ld: /tmp/ccRWDrpB.o: in function `generate(chess::Board&) [clone .cold]':
datagen.cpp:(.text.unlikely+0x31): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x54): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x7a): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x8c): undefined reference to `std::basic_ofstream<char, std::char_traits<char> >::~basic_ofstream()'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x9c): undefined reference to `std::basic_filebuf<char, std::char_traits<char> >::~basic_filebuf()'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0xa3): undefined reference to `VTT for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0xaa): undefined reference to `VTT for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0xce): undefined reference to `std::ios_base::~ios_base()'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0xd8): undefined reference to `std::random_device::_M_fini()'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x105): undefined reference to `__cxa_begin_catch'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x10a): undefined reference to `__cxa_end_catch'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x123): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x15d): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x180): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x1a7): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: datagen.cpp:(.text.unlikely+0x1c0): undefined reference to `operator delete(void*, unsigned long)'
/usr/bin/ld: /tmp/ccRWDrpB.o:datagen.cpp:(.text.unlikely+0x1e6): more undefined references to `operator delete(void*, unsigned long)' follow
/usr/bin/ld: /tmp/ccRWDrpB.o:(.data.rel.ro+0x0): undefined reference to `vtable for std::basic_ofstream<char, std::char_traits<char> >'
/usr/bin/ld: /tmp/ccZIPgDy.o: in function `_GLOBAL__sub_I__ZN2tt15storeEvaluationEmhhiN5chess4MoveEi':
tt.cpp:(.text.startup+0xc): undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: tt.cpp:(.text.startup+0x13): undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: warning: creating DT_TEXTREL in a PIE
collect2: error: ld returned 1 exit status
make: *** [Makefile:16: all] Error 1