configure: disable compile time asserts for !opt and !static_assert
[fio.git] / compiler / compiler.h
index a6a74322549fc66f3210dc9b52406d1fd43a5475..20df21d050c3ba7941e705bf51140430dd7b237a 100644 (file)
 #if defined(CONFIG_STATIC_ASSERT)
 #define compiletime_assert(condition, msg) _Static_assert(condition, msg)
 
 #if defined(CONFIG_STATIC_ASSERT)
 #define compiletime_assert(condition, msg) _Static_assert(condition, msg)
 
-#else
+#elif !defined(CONFIG_DISABLE_OPTIMIZATIONS)
+
 #ifndef __compiletime_error
 #define __compiletime_error(message)
 #endif
 #ifndef __compiletime_error
 #define __compiletime_error(message)
 #endif
+
 #ifndef __compiletime_error_fallback
 #define __compiletime_error_fallback(condition)        do { } while (0)
 #endif
 #ifndef __compiletime_error_fallback
 #define __compiletime_error_fallback(condition)        do { } while (0)
 #endif
 #define compiletime_assert(condition, msg) \
        _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
 
 #define compiletime_assert(condition, msg) \
        _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
 
+#else
+
+#define compiletime_assert(condition, msg)     do { } while (0)
+
 #endif
 
 #endif
 #endif
 
 #endif