template <bool>
struct StaticCheck { StaticCheck(...);};
template <>
struct StaticCheck<false> {};
#define STATIC_ASSERT(expr, msg) /
{ /
class ERORR_##msg {}; /
(void)sizeof((StaticCheck<expr>)StaticCheck<expr>(ERROR_##msg)); /
}