Silence unused variable warnings caused by BT_ASSERT() in non-debug mode
authorFrancis Deslauriers <francis.deslauriers@efficios.com>
Tue, 3 Apr 2018 20:24:49 +0000 (16:24 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 3 May 2019 22:19:34 +0000 (18:19 -0400)
commit71e894894b461e2d5663859144f797037c69eddc
treee8deedff2031caac1c768608078f3f302f1c5289
parent450e6770cc2a4845aa823ca6d525225257dde8c0
Silence unused variable warnings caused by BT_ASSERT() in non-debug mode

When building with the BABELTRACE_DEBUG_MODE configure option _not_ set,
multiple set-but-not-used warnings are emitted by the compiler. Most of
the time this happens because BT_ASSERT() is used to verify the return
value of functions and when not in DEBUG_MODE those return value are not
used.

The solution is to explicitly tell the compiler that we don't care about
this value so that it does not emit warning when building in non-debug
mode. This approach also makes sure not to evaluate the expression using
the `sizeof` operator, thus preventing any side effects.

See this post for further details [1].

[1]: https://stackoverflow.com/questions/37411809/how-to-elegantly-fix-this-unused-variable-warning/37412551#37412551

Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
include/babeltrace/assert-internal.h
This page took 0.025544 seconds and 4 git commands to generate.