############################# compiler flags ##################################
-SET(CMAKE_CXX_FLAGS_PROFILING "-g -std=c++14 -O0 -pg -Wp,-U_FORTIFY_SOURCE")
-SET(CMAKE_CXX_FLAGS_DEBUG "-g -std=c++14 -O0 -ggdb -Wp,-U_FORTIFY_SOURCE")
-SET(CMAKE_CXX_FLAGS_RELEASE "-g -std=c++14 -O2 -DNDEBUG=1")
-SET(CMAKE_CXX_FLAGS_CCOV "-g -std=c++14 -O2 --coverage")
-SET(CMAKE_CXX_FLAGS_VALGRIND "-ggdb -std=c++14 -O0 -fno-inline -Wp,-U_FORTIFY_SOURCE")
+SET(CMAKE_CXX_FLAGS_PROFILING "-g -std=c++17 -O0 -pg -Wp,-U_FORTIFY_SOURCE")
+SET(CMAKE_CXX_FLAGS_DEBUG "-g -std=c++17 -O0 -ggdb -Wp,-U_FORTIFY_SOURCE")
+SET(CMAKE_CXX_FLAGS_RELEASE "-g -std=c++17 -O2 -DNDEBUG=1")
+SET(CMAKE_CXX_FLAGS_CCOV "-g -std=c++17 -O2 --coverage")
+SET(CMAKE_CXX_FLAGS_VALGRIND "-ggdb -std=c++17 -O0 -fno-inline -Wp,-U_FORTIFY_SOURCE")
# Force PIE
SET(CMAKE_POSITION_INDEPENDENT_CODE "True")