Go to the documentation of this file.
24#ifndef __VSF_ESPIDF_ESP_ASSERT_H__
25#define __VSF_ESPIDF_ESP_ASSERT_H__
30#define ESP_STATIC_ASSERT static_assert
34#define TRY_STATIC_ASSERT(CONDITION, MSG) do { \
35 ESP_STATIC_ASSERT(__builtin_choose_expr(__builtin_constant_p(CONDITION), \
36 (CONDITION), 1), #MSG); \
37 assert(#MSG && (CONDITION)); \
40#define TRY_STATIC_ASSERT(CONDITION, MSG) do { \
41 if (__builtin_constant_p(CONDITION) && !(CONDITION)) { \
42 extern __attribute__((error(#MSG))) void failed_compile_time_assert(void); \
43 failed_compile_time_assert(); \
45 assert(#MSG && (CONDITION)); \