Don't try to use the non-standard alloca.h
[openal-soft.git] / include / static_assert.h
blob65283cf04cb2cf6d53eacd50b5901be255b62f51
1 #ifndef AL_STATIC_ASSERT_H
2 #define AL_STATIC_ASSERT_H
4 #include <assert.h>
7 #ifndef static_assert
8 #ifdef HAVE_C11_STATIC_ASSERT
9 #define static_assert _Static_assert
10 #else
11 #define CTASTR2(_pre,_post) _pre##_post
12 #define CTASTR(_pre,_post) CTASTR2(_pre,_post)
13 #define static_assert(_cond, _msg) typedef struct { int CTASTR(static_assert_failed_at_line_,__LINE__) : !!(_cond); } CTASTR(static_assertion_,__COUNTER__)
14 #endif
15 #endif
17 #endif /* AL_STATIC_ASSERT_H */