g++ -O3 -march=native -ffast-math -funroll-loops -flto -fuse-ld=lld -std=c++20 -static -DNDEBUG -DEVALFILE=\"/home/liying/OpenBench/Client/Networks/130BBF51\" ./src/Prelude.cpp -o Spaghet-7E96C93D-130BBF51 In file included from ./src/Prelude.cpp:32: ./src/types.h:119:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::RESET’ is not literal 119 | static constexpr 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 ./src/Prelude.cpp:13: /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 In file included from ./src/Prelude.cpp:32: ./src/types.h:119:29: error: in-class initialization of static data member ‘const string Colors::RESET’ of non-literal type 119 | static constexpr string RESET = "\033[0m"; | ^~~~~ ./src/types.h:122:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BLACK’ is not literal 122 | static constexpr string BLACK = "\033[30m"; | ^~~~~ ./src/types.h:122:29: error: in-class initialization of static data member ‘const string Colors::BLACK’ of non-literal type ./src/types.h:123:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::RED’ is not literal 123 | static constexpr string RED = "\033[31m"; | ^~~ ./src/types.h:123:29: error: in-class initialization of static data member ‘const string Colors::RED’ of non-literal type ./src/types.h:124:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::GREEN’ is not literal 124 | static constexpr string GREEN = "\033[32m"; | ^~~~~ ./src/types.h:124:29: error: in-class initialization of static data member ‘const string Colors::GREEN’ of non-literal type ./src/types.h:125:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::YELLOW’ is not literal 125 | static constexpr string YELLOW = "\033[33m"; | ^~~~~~ ./src/types.h:125:29: error: in-class initialization of static data member ‘const string Colors::YELLOW’ of non-literal type ./src/types.h:126:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BLUE’ is not literal 126 | static constexpr string BLUE = "\033[34m"; | ^~~~ ./src/types.h:126:29: error: in-class initialization of static data member ‘const string Colors::BLUE’ of non-literal type ./src/types.h:127:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::MAGENTA’ is not literal 127 | static constexpr string MAGENTA = "\033[35m"; | ^~~~~~~ ./src/types.h:127:29: error: in-class initialization of static data member ‘const string Colors::MAGENTA’ of non-literal type ./src/types.h:128:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::CYAN’ is not literal 128 | static constexpr string CYAN = "\033[36m"; | ^~~~ ./src/types.h:128:29: error: in-class initialization of static data member ‘const string Colors::CYAN’ of non-literal type ./src/types.h:129:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::WHITE’ is not literal 129 | static constexpr string WHITE = "\033[37m"; | ^~~~~ ./src/types.h:129:29: error: in-class initialization of static data member ‘const string Colors::WHITE’ of non-literal type ./src/types.h:132:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_BLACK’ is not literal 132 | static constexpr string BRIGHT_BLACK = "\033[90m"; | ^~~~~~~~~~~~ ./src/types.h:132:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_BLACK’ of non-literal type ./src/types.h:133:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_RED’ is not literal 133 | static constexpr string BRIGHT_RED = "\033[91m"; | ^~~~~~~~~~ ./src/types.h:133:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_RED’ of non-literal type ./src/types.h:134:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_GREEN’ is not literal 134 | static constexpr string BRIGHT_GREEN = "\033[92m"; | ^~~~~~~~~~~~ ./src/types.h:134:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_GREEN’ of non-literal type ./src/types.h:135:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_YELLOW’ is not literal 135 | static constexpr string BRIGHT_YELLOW = "\033[93m"; | ^~~~~~~~~~~~~ ./src/types.h:135:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_YELLOW’ of non-literal type ./src/types.h:136:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_BLUE’ is not literal 136 | static constexpr string BRIGHT_BLUE = "\033[94m"; | ^~~~~~~~~~~ ./src/types.h:136:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_BLUE’ of non-literal type ./src/types.h:137:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_MAGENTA’ is not literal 137 | static constexpr string BRIGHT_MAGENTA = "\033[95m"; | ^~~~~~~~~~~~~~ ./src/types.h:137:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_MAGENTA’ of non-literal type ./src/types.h:138:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_GYAN’ is not literal 138 | static constexpr string BRIGHT_GYAN = "\033[96m"; | ^~~~~~~~~~~ ./src/types.h:138:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_GYAN’ of non-literal type ./src/types.h:139:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::BRIGHT_WHITE’ is not literal 139 | static constexpr string BRIGHT_WHITE = "\033[97m"; | ^~~~~~~~~~~~ ./src/types.h:139:29: error: in-class initialization of static data member ‘const string Colors::BRIGHT_WHITE’ of non-literal type ./src/types.h:141:29: error: the type ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} of ‘constexpr’ variable ‘Colors::GREY’ is not literal 141 | static constexpr string GREY = BRIGHT_BLACK; | ^~~~ ./src/types.h:141:29: error: in-class initialization of static data member ‘const string Colors::GREY’ of non-literal type ./src/Prelude.cpp: In function ‘std::string abbreviateNum(i64)’: ./src/Prelude.cpp:262:21: error: ‘format’ is not a member of ‘std’ 262 | return std::format("{:.2f} g", v / 1000000000.0); | ^~~~~~ ./src/Prelude.cpp:264:21: error: ‘format’ is not a member of ‘std’ 264 | return std::format("{:.2f} m", v / 1000000.0); | ^~~~~~ ./src/Prelude.cpp:266:21: error: ‘format’ is not a member of ‘std’ 266 | return std::format("{:.2f} k", v / 1000.0); | ^~~~~~ ./src/Prelude.cpp: In function ‘constexpr u64 getRookAttacks(Square, u64)’: ./src/Prelude.cpp:520:174: error: the value of ‘ROOK_ATTACKS’ is not usable in a constant expression 520 | constexpr u64 getRookAttacks(Square square, u64 occ) { return ROOK_ATTACKS[square][((occ & ROOK_ATTACK_MASKS[square]) * ROOK_MAGICS[square]) >> ROOK_ATTACK_SHIFTS[square]]; } | ^ ./src/Prelude.cpp:488:5: note: ‘ROOK_ATTACKS’ was not declared ‘constexpr’ 488 | u64 ROOK_ATTACKS[64][4096]; | ^~~~~~~~~~~~ ./src/Prelude.cpp: In function ‘constexpr u64 getBishopAttacks(Square, u64)’: ./src/Prelude.cpp:570:184: error: the value of ‘BISHOP_ATTACKS’ is not usable in a constant expression 570 | constexpr u64 getBishopAttacks(Square square, u64 occ) { return BISHOP_ATTACKS[square][((occ & BISHOP_ATTACK_MASKS[square]) * BISHOP_MAGICS[square]) >> BISHOP_ATTACK_SHIFTS[square]]; } | ^ ./src/Prelude.cpp:538:5: note: ‘BISHOP_ATTACKS’ was not declared ‘constexpr’ 538 | u64 BISHOP_ATTACKS[64][512]; | ^~~~~~~~~~~~~~ ./src/Prelude.cpp: In lambda function: ./src/Prelude.cpp:1658:58: error: ‘format’ is not a member of ‘std’ 1658 | return (withoutSq > 0 ? "+" : "") + std::format("{:.2f}", withoutSq); | ^~~~~~ ./src/Prelude.cpp: In member function ‘void NNUE::showBuckets(const Board*)’: ./src/Prelude.cpp:2460:116: error: ‘format’ is not a member of ‘std’ 2460 | cout << "| " << padStr(outputBucket, 11, 0) << "| " << (staticEval > 0 ? "+" : "-") << " " << padStr(std::format("{:.2f}", std::abs(staticEval / 100.0)), 8, 0) << "|"; | ^~~~~~ ./src/Prelude.cpp: In function ‘MoveEvaluation iterativeDeepening(Board, int, std::atomic<bool>&, int, int, int, int, int, u64, u64)’: ./src/Prelude.cpp:3317:73: error: ‘format’ is not a member of ‘std’ 3317 | fancyEval = (toCP(eval, board) > 0 ? '+' : '\0') + std::format("{:.2f}", toCP(eval, board) / 100.0); | ^~~~~~ ./src/Prelude.cpp:3327:33: error: ‘format’ is not a member of ‘std’ 3327 | cout << padStr(std::format("{:.1f}%", hashPercent), 9); | ^~~~~~ ./src/Prelude.cpp: In function ‘std::string makeFileName()’: ./src/Prelude.cpp:3592:27: error: ‘format’ is not a member of ‘std’ 3592 | return "data-" + std::format("{:04}-{:02}-{:02}", tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday) + "-" + randomStr + ".preludedata"; | ^~~~~~ ./src/Prelude.cpp: In function ‘void playGames()’: ./src/Prelude.cpp:3663:45: error: ‘format’ is not a member of ‘std’ 3663 | cout << "Positions/second: " + std::format("{:.2f}", avgPosPerSec) << endl; | ^~~~~~ ./src/Prelude.cpp: In instantiation of ‘u64 shift(u64) [with Direction shiftDir = SOUTH; u64 = long unsigned int]’: ./src/Prelude.cpp:990:70: required from here ./src/Prelude.cpp:349:15: warning: left shift count is negative [-Wshift-count-negative] 349 | return bb << shiftDir; | ~~~^~~~~~~~~~~ ./src/Prelude.cpp: In instantiation of ‘u64 shift(u64) [with Direction shiftDir = SOUTH_EAST; u64 = long unsigned int]’: ./src/Prelude.cpp:995:99: required from here ./src/Prelude.cpp:349:15: warning: left shift count is negative [-Wshift-count-negative] ./src/Prelude.cpp: In instantiation of ‘u64 shift(u64) [with Direction shiftDir = SOUTH_WEST; u64 = long unsigned int]’: ./src/Prelude.cpp:1000:97: required from here ./src/Prelude.cpp:349:15: warning: left shift count is negative [-Wshift-count-negative] ./src/Prelude.cpp: In instantiation of ‘u64 shift(u64) [with Direction shiftDir = WEST; u64 = long unsigned int]’: ./src/Prelude.cpp:1893:71: required from here ./src/Prelude.cpp:349:15: warning: left shift count is negative [-Wshift-count-negative] ./src/Prelude.cpp: In lambda function: ./src/Prelude.cpp:3627:15: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 3627 | system("clear"); | ~~~~~~^~~~~~~~~ make: *** [makefile:29: Spaghet-7E96C93D-130BBF51] Error 1