 |
PowerBlocks SDK
|
|
Loading...
Searching...
No Matches
21#define compilerrt_abort() __compilerrt_abort_impl(__FILE__, __LINE__, __func__)
23NORETURN
void __compilerrt_abort_impl(
const char *file,
int line,
24 const char *function);
26#define COMPILE_TIME_ASSERT(expr) COMPILE_TIME_ASSERT1(expr, __COUNTER__)
27#define COMPILE_TIME_ASSERT1(expr, cnt) COMPILE_TIME_ASSERT2(expr, cnt)
28#define COMPILE_TIME_ASSERT2(expr, cnt) \
29 typedef char ct_assert_##cnt[(expr) ? 1 : -1] UNUSED
32#define REPEAT_0_TIMES(code_to_repeat)
33#define REPEAT_1_TIMES(code_to_repeat) code_to_repeat
34#define REPEAT_2_TIMES(code_to_repeat) \
35 REPEAT_1_TIMES(code_to_repeat) \
37#define REPEAT_3_TIMES(code_to_repeat) \
38 REPEAT_2_TIMES(code_to_repeat) \
40#define REPEAT_4_TIMES(code_to_repeat) \
41 REPEAT_3_TIMES(code_to_repeat) \
44#define REPEAT_N_TIMES_(N, code_to_repeat) REPEAT_##N##_TIMES(code_to_repeat)
45#define REPEAT_N_TIMES(N, code_to_repeat) REPEAT_N_TIMES_(N, code_to_repeat)