mirror of https://gerrit.osmocom.org/libosmocore
Vadim Yanitskiy
22ade291ad
This patch is a preparation for the upcoming change making use of the built-in static_assert(), which is available since C11. When using built-in static_assert(), gcc v12.2.1 fails: include/osmocom/core/msgb.h: In function 'msgb_alloc_headroom_c': include/osmocom/core/msgb.h:532:33: error: expression in static assertion is not constant 532 | osmo_static_assert(size >= headroom, headroom_bigger); include/osmocom/core/utils.h:86:24: note: in definition of macro 'osmo_static_assert' 86 | static_assert((exp), "(" #exp ") failed") | ^~~ include/osmocom/core/msgb.h: In function 'msgb_alloc_headroom': include/osmocom/core/msgb.h:554:33: error: expression in static assertion is not constant 554 | osmo_static_assert(size >= headroom, headroom_bigger); include/osmocom/core/utils.h:86:24: note: in definition of macro 'osmo_static_assert' 86 | static_assert((exp), "(" #exp ") failed") | ^~~ These are not really *static* assert()s, because they operate on the user supplied arguments 'size' and 'headroom', which are not guaranteed to be integer literals. Neither they trigger compilation failures as expected, nor do they abort at run-time. They simply do nothing. Change-Id: I17ef4f3283ce20a5b452b7874c826acfb02a0123 |
||
---|---|---|
.. | ||
osmocom | ||
Makefile.am |