mirror of https://gitee.com/openkylin/qemu.git
QEMU_BUILD_BUG_ON: use __COUNTER__
Some headers use QEMU_BUILD_BUG_ON. This causes a problem if the C file including that header happens to have QEMU_BUILD_BUG_ON at the same line number. Fix using a widely available extension: __COUNTER__. If unavailable, provide a stub. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
32f825dece
commit
60abf0a5e0
|
@ -85,9 +85,13 @@
|
|||
#define typeof_field(type, field) typeof(((type *)0)->field)
|
||||
#define type_check(t1,t2) ((t1*)0 - (t2*)0)
|
||||
|
||||
#ifdef __COUNTER__
|
||||
#define QEMU_BUILD_BUG_ON(x) \
|
||||
typedef char glue(qemu_build_bug_on__, __LINE__)[(x) ? -1 : 1] \
|
||||
typedef char glue(qemu_build_bug_on__, __COUNTER__)[(x) ? -1 : 1] \
|
||||
__attribute__((unused))
|
||||
#else
|
||||
#define QEMU_BUILD_BUG_ON(x)
|
||||
#endif
|
||||
|
||||
#if defined __GNUC__
|
||||
# if !QEMU_GNUC_PREREQ(4, 4)
|
||||
|
|
Loading…
Reference in New Issue