diff --git a/grpc_wrap.cc b/grpc_wrap.cc index e37872a9f..7a32ad842 100644 --- a/grpc_wrap.cc +++ b/grpc_wrap.cc @@ -48,9 +48,11 @@ #include #ifdef GRPC_SYS_SECURE +#include #include #endif +#include #include #ifdef GPR_WINDOWS @@ -66,6 +68,19 @@ #define GPR_CALLTYPE #endif +#define GPR_ASSERT(x) \ + do { \ + if (__builtin_expect(!(x), 0)) { \ + assertion_failed(__FILE__, __LINE__, #x); \ + } \ + } while (0) + +static void __attribute__((noreturn)) assertion_failed( + const char* filename, int line, const char* message) { + fprintf(stderr, "%s:%d: ASSERTION FAILED: %s", filename, line, message); + abort(); +} + grpc_byte_buffer* string_to_byte_buffer(const char* buffer, size_t len) { grpc_slice slice = grpc_slice_from_copied_buffer(buffer, len); grpc_byte_buffer* bb = grpc_raw_byte_buffer_create(&slice, 1);