1234567891011121314151617181920212223 |
- /*
- * Copyright (c) 2014-2018, Arm Limited and Contributors. All rights reserved.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
- #ifndef CASSERT_H
- #define CASSERT_H
- #include <cdefs.h>
- /*******************************************************************************
- * Macro to flag a compile time assertion. It uses the preprocessor to generate
- * an invalid C construct if 'cond' evaluates to false.
- * The following compilation error is triggered if the assertion fails:
- * "error: size of array 'msg' is negative"
- * The 'unused' attribute ensures that the unused typedef does not emit a
- * compiler warning.
- ******************************************************************************/
- #define CASSERT(cond, msg) \
- typedef char msg[(cond) ? 1 : -1] __unused
- #endif /* CASSERT_H */
|