diff --git a/contrib/pax_storage/CMakeLists.txt b/contrib/pax_storage/CMakeLists.txt index 5942f3bd913..e45eab560e6 100644 --- a/contrib/pax_storage/CMakeLists.txt +++ b/contrib/pax_storage/CMakeLists.txt @@ -21,7 +21,10 @@ set(CMAKE_CXX_STANDARD 17) set(TOP_DIR ${PROJECT_SOURCE_DIR}/../..) set(CBDB_INCLUDE_DIR ${TOP_DIR}/src/include) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror -Werror=pessimizing-move -Wno-unused-function -Wno-error=ignored-qualifiers -Wno-error=array-bounds -Wuninitialized -Winit-self -Wstrict-aliasing -Wno-missing-field-initializers -Wno-unused-parameter -Wno-clobbered -Wno-sized-deallocation -g") +# Base CXX flags +# Note: -Wpessimizing-move is enabled by default in GCC 9+ and will be caught by -Werror +# No need to explicitly add -Werror=pessimizing-move (which breaks GCC 8.x compatibility) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror -Wno-unused-function -Wno-error=ignored-qualifiers -Wno-error=array-bounds -Wuninitialized -Winit-self -Wstrict-aliasing -Wno-missing-field-initializers -Wno-unused-parameter -Wno-clobbered -Wno-sized-deallocation -g") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wno-unused-parameter -Wno-parameter-name") option(USE_MANIFEST_API "Use manifest API" OFF) diff --git a/contrib/pax_storage/src/cpp/comm/fast_io.cc b/contrib/pax_storage/src/cpp/comm/fast_io.cc index 5b9e593def9..66709189e33 100644 --- a/contrib/pax_storage/src/cpp/comm/fast_io.cc +++ b/contrib/pax_storage/src/cpp/comm/fast_io.cc @@ -27,6 +27,13 @@ #include "fast_io.h" +#include // for pread + +// uring_likely may not be defined in older liburing versions +#ifndef uring_likely +#define uring_likely(x) __builtin_expect(!!(x), 1) +#endif + namespace pax {