summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordanh-arm <dan.handley@arm.com>2015-10-19 11:40:17 +0100
committerdanh-arm <dan.handley@arm.com>2015-10-19 11:40:17 +0100
commite662262f90aa3a7c6417b3601c0386d7c37538d8 (patch)
tree5d7cdc5ac636447effc50dd84a7cbb97f74e136d
parent3ef8f7affd68ea669b7e01a5ffd4d34732295e59 (diff)
parentc17a4dc34c0aa449e843595319fd9380c2a753b4 (diff)
Merge pull request #408 from sandrine-bailleux/sb/cassert
Make CASSERT() macro callable from anywhere
-rw-r--r--include/lib/cassert.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/lib/cassert.h b/include/lib/cassert.h
index 0e5529dd..e8089cbb 100644
--- a/include/lib/cassert.h
+++ b/include/lib/cassert.h
@@ -34,9 +34,12 @@
/*******************************************************************************
* 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:
+ * 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]
+#define CASSERT(cond, msg) \
+ typedef char msg[(cond) ? 1 : -1] __attribute__((unused))
#endif /* __CASSERT_H__ */