g++ -O3 -march=native -ffast-math -funroll-loops -std=c++20 -static -DNDEBUG -DEVALFILE_PATH=\"./nnue.bin\" -c Prelude.cpp -o Prelude.o
Prelude.cpp:196:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::reset’ is not literal
196 | constexpr static const string reset = "\033[0m";
| ^~~~~
In file included from /usr/include/c++/11/string:55,
from /usr/include/c++/11/bits/locale_classes.h:40,
from /usr/include/c++/11/bits/ios_base.h:41,
from /usr/include/c++/11/ios:42,
from /usr/include/c++/11/ostream:38,
from /usr/include/c++/11/iostream:39,
from Prelude.cpp:23:
/usr/include/c++/11/bits/basic_string.h:85:11: note: ‘std::__cxx11::basic_string<char>’ is not literal because:
85 | class basic_string
| ^~~~~~~~~~~~
/usr/include/c++/11/bits/basic_string.h:85:11: note: ‘std::__cxx11::basic_string<char>’ does not have ‘constexpr’ destructor
Prelude.cpp:196:35: error: in-class initialization of static data member ‘const string Colors::reset’ of non-literal type
196 | constexpr static const string reset = "\033[0m";
| ^~~~~
Prelude.cpp:199:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::black’ is not literal
199 | constexpr static const string black = "\033[30m";
| ^~~~~
Prelude.cpp:199:35: error: in-class initialization of static data member ‘const string Colors::black’ of non-literal type
Prelude.cpp:200:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::red’ is not literal
200 | constexpr static const string red = "\033[31m";
| ^~~
Prelude.cpp:200:35: error: in-class initialization of static data member ‘const string Colors::red’ of non-literal type
Prelude.cpp:201:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::green’ is not literal
201 | constexpr static const string green = "\033[32m";
| ^~~~~
Prelude.cpp:201:35: error: in-class initialization of static data member ‘const string Colors::green’ of non-literal type
Prelude.cpp:202:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::yellow’ is not literal
202 | constexpr static const string yellow = "\033[33m";
| ^~~~~~
Prelude.cpp:202:35: error: in-class initialization of static data member ‘const string Colors::yellow’ of non-literal type
Prelude.cpp:203:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::blue’ is not literal
203 | constexpr static const string blue = "\033[34m";
| ^~~~
Prelude.cpp:203:35: error: in-class initialization of static data member ‘const string Colors::blue’ of non-literal type
Prelude.cpp:204:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::magenta’ is not literal
204 | constexpr static const string magenta = "\033[35m";
| ^~~~~~~
Prelude.cpp:204:35: error: in-class initialization of static data member ‘const string Colors::magenta’ of non-literal type
Prelude.cpp:205:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::cyan’ is not literal
205 | constexpr static const string cyan = "\033[36m";
| ^~~~
Prelude.cpp:205:35: error: in-class initialization of static data member ‘const string Colors::cyan’ of non-literal type
Prelude.cpp:206:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::white’ is not literal
206 | constexpr static const string white = "\033[37m";
| ^~~~~
Prelude.cpp:206:35: error: in-class initialization of static data member ‘const string Colors::white’ of non-literal type
Prelude.cpp:209:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_black’ is not literal
209 | constexpr static const string bright_black = "\033[90m";
| ^~~~~~~~~~~~
Prelude.cpp:209:35: error: in-class initialization of static data member ‘const string Colors::bright_black’ of non-literal type
Prelude.cpp:210:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_red’ is not literal
210 | constexpr static const string bright_red = "\033[91m";
| ^~~~~~~~~~
Prelude.cpp:210:35: error: in-class initialization of static data member ‘const string Colors::bright_red’ of non-literal type
Prelude.cpp:211:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_green’ is not literal
211 | constexpr static const string bright_green = "\033[92m";
| ^~~~~~~~~~~~
Prelude.cpp:211:35: error: in-class initialization of static data member ‘const string Colors::bright_green’ of non-literal type
Prelude.cpp:212:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_yellow’ is not literal
212 | constexpr static const string bright_yellow = "\033[93m";
| ^~~~~~~~~~~~~
Prelude.cpp:212:35: error: in-class initialization of static data member ‘const string Colors::bright_yellow’ of non-literal type
Prelude.cpp:213:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_blue’ is not literal
213 | constexpr static const string bright_blue = "\033[94m";
| ^~~~~~~~~~~
Prelude.cpp:213:35: error: in-class initialization of static data member ‘const string Colors::bright_blue’ of non-literal type
Prelude.cpp:214:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_magenta’ is not literal
214 | constexpr static const string bright_magenta = "\033[95m";
| ^~~~~~~~~~~~~~
Prelude.cpp:214:35: error: in-class initialization of static data member ‘const string Colors::bright_magenta’ of non-literal type
Prelude.cpp:215:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_cyan’ is not literal
215 | constexpr static const string bright_cyan = "\033[96m";
| ^~~~~~~~~~~
Prelude.cpp:215:35: error: in-class initialization of static data member ‘const string Colors::bright_cyan’ of non-literal type
Prelude.cpp:216:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::bright_white’ is not literal
216 | constexpr static const string bright_white = "\033[97m";
| ^~~~~~~~~~~~
Prelude.cpp:216:35: error: in-class initialization of static data member ‘const string Colors::bright_white’ of non-literal type
Prelude.cpp:218:35: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::grey’ is not literal
218 | constexpr static const string grey = bright_black;
| ^~~~
Prelude.cpp:218:35: error: in-class initialization of static data member ‘const string Colors::grey’ of non-literal type
Prelude.cpp: In function ‘std::string abbreviateNum(i64)’:
Prelude.cpp:380:37: error: ‘format’ is not a member of ‘std’
380 | if (v > 1000000000) return std::format("{:.2f} g", v / 1000000000.0);
| ^~~~~~
Prelude.cpp:381:34: error: ‘format’ is not a member of ‘std’
381 | if (v > 1000000) return std::format("{:.2f} m", v / 1000000.0);
| ^~~~~~
Prelude.cpp:382:31: error: ‘format’ is not a member of ‘std’
382 | if (v > 1000) return std::format("{:.2f} k", v / 1000.0);
| ^~~~~~
Prelude.cpp: In function ‘constexpr int antiDiagonalOf(Square)’:
Prelude.cpp:580:59: warning: arithmetic between different enumeration types ‘Rank’ and ‘File’ is deprecated [-Wdeprecated-enum-enum-conversion]
580 | constexpr int antiDiagonalOf(Square s) { return rankOf(s) + fileOf(s); }
| ~~~~~~~~~~^~~~~~~~~~~
Prelude.cpp: In function ‘constexpr u64 getRookAttacks(Square, u64)’:
Prelude.cpp:707:1: error: the value of ‘ROOK_ATTACKS’ is not usable in a constant expression
707 | }
| ^
Prelude.cpp:660:5: note: ‘ROOK_ATTACKS’ was not declared ‘constexpr’
660 | u64 ROOK_ATTACKS[64][4096];
| ^~~~~~~~~~~~
Prelude.cpp: In function ‘constexpr u64 getBishopAttacks(Square, u64)’:
Prelude.cpp:773:1: error: the value of ‘BISHOP_ATTACKS’ is not usable in a constant expression
773 | }
| ^
Prelude.cpp:726:5: note: ‘BISHOP_ATTACKS’ was not declared ‘constexpr’
726 | u64 BISHOP_ATTACKS[64][512];
| ^~~~~~~~~~~~~~
Prelude.cpp: In function ‘MoveEvaluation iterativeDeepening(Board&, int, std::atomic<bool>&, int, int, int, int, int, int, int)’:
Prelude.cpp:3144:40: error: ‘setprecision’ is not a member of ‘std’
3144 | cout << std::fixed << std::setprecision(2);
| ^~~~~~~~~~~~
Prelude.cpp:3146:78: error: ‘format’ is not a member of ‘std’
3146 | const string fancyEval = (bestMove.eval > 0 ? '+' : '\0') + std::format("{:.2f}", bestMove.eval / 100.0);
| ^~~~~~
Prelude.cpp:3155:33: error: ‘format’ is not a member of ‘std’
3155 | cout << padStr(std::format("{:.1f}%", hashPercent), 9);
| ^~~~~~
Prelude.cpp:3160:64: error: ‘setprecision’ is not a member of ‘std’
3160 | cout << Colors::reset << std::defaultfloat << std::setprecision(6) << endl;
| ^~~~~~~~~~~~
Prelude.cpp: In function ‘std::string makeFileName()’:
Prelude.cpp:3367:27: error: ‘format’ is not a member of ‘std’
3367 | return "data-" + std::format("{:04}-{:02}-{:02}", tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday) + "-" + randomStr + ".preludedata";
| ^~~~~~
Prelude.cpp: In function ‘void playGames()’:
Prelude.cpp:3434:45: error: ‘format’ is not a member of ‘std’
3434 | cout << "Positions/second: " + std::format("{:.2f}", avgPosPerSec) << endl;
| ^~~~~~
make: *** [makefile:33: Prelude.o] Error 1