g++ ./src/main.cpp -std=c++17 -DNDEBUG -O3 -march=native -pthread -o 4ku-8D26D3D0 ./src/main.cpp:164:63: warning: use of ‘auto’ in parameter declaration only available with ‘-std=c++20’ or ‘-fconcepts’ 164 | [[nodiscard]] u64 ray(const i32 sq, const u64 blockers, const auto f) { | ^~~~ ./src/main.cpp:373:33: warning: use of ‘auto’ in parameter declaration only available with ‘-std=c++20’ or ‘-fconcepts’ 373 | const auto f) { | ^~~~ ./src/main.cpp: In function ‘i32 main(i32, const char**)’: ./src/main.cpp:1259:24: error: ‘jthread’ was not declared in this scope; did you mean ‘pthread_t’? 1259 | vector<jthread> threads; | ^~~~~~~ | pthread_t ./src/main.cpp:1259:31: error: template argument 1 is invalid 1259 | vector<jthread> threads; | ^ ./src/main.cpp:1259:31: error: template argument 2 is invalid ./src/main.cpp:1262:29: error: request for member ‘emplace_back’ in ‘threads’, which is of non-class type ‘int’ 1262 | threads.emplace_back([=, &stop]() mutable { | ^~~~~~~~~~~~ make: *** [Makefile:12: all] Error 1