Given that ARG_CHECK is defined as:
#define ARG_CHECK(cond) do { \
if (EXPECT(!(cond), 0)) { \
ctx->illegal_callback.fn(#cond, ctx->illegal_callback.data); \
return 0; \
} \
} while(0)
These checks (17 of 'em from a quick grep) make no sense and are doomed to explode:
ARG_CHECK(ctx != NULL);