#ifndef STATIC_ASSERT_H #define STATIC_ASSERT_H #ifdef __cplusplus extern "C" { #endif #ifndef STATIC_ASSERT //Alexandrescu assert #define STATIC_ASSERT_(X, L) typedef char static_assertion_at_line ## L [(X)?1:-1] #define STATIC_ASSERT__(X, L) STATIC_ASSERT_(X, L) #define STATIC_ASSERT(COND, MSG) STATIC_ASSERT__(COND, __LINE__) #endif #ifdef __cplusplus } #endif #endif