include/qemu/osdep: Add qemu_build_assert
This differs from assert, in that with optimization enabled it triggers at build-time. It differs from QEMU_BUILD_BUG_ON, aka _Static_assert, in that it is sensitive to control flow and is subject to dead-code elimination. Acked-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
69993c4e62
commit
d44e3737f9
@ -186,6 +186,14 @@ void QEMU_ERROR("code path is reachable")
|
||||
#define qemu_build_not_reached() g_assert_not_reached()
|
||||
#endif
|
||||
|
||||
/**
|
||||
* qemu_build_assert()
|
||||
*
|
||||
* The compiler, during optimization, is expected to prove that the
|
||||
* assertion is true.
|
||||
*/
|
||||
#define qemu_build_assert(test) while (!(test)) qemu_build_not_reached()
|
||||
|
||||
/*
|
||||
* According to waitpid man page:
|
||||
* WCOREDUMP
|
||||
|
Loading…
Reference in New Issue
Block a user