#ifndef ODYSSEY_C_H #define ODYSSEY_C_H /* * Odyssey. * * Scalable PostgreSQL connection pooler. */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #ifdef USE_SSL # include # include #endif /* only GCC supports the unused attribute */ #ifdef __GNUC__ # define od_attribute_unused() __attribute__((unused)) #else # define od_attribute_unused() #endif /* GCC support aligned, packed and noreturn */ #ifdef __GNUC__ # define od_attribute_aligned(a) __attribute__((aligned(a))) # define od_attribute_noreturn() __attribute__((noreturn)) # define od_attribute_packed() __attribute__((packed)) #endif #define FLEXIBLE_ARRAY_MEMBER /* empty */ #if defined __has_builtin # if __has_builtin(__builtin_unreachable) /* odyssey unreachable code */ # define od_unreachable() __builtin_unreachable() # endif #endif #ifndef od_unreachable # define od_unreachable() abort() #endif #endif // ODYSSEY_C_H