[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-3.2-testing] Prefix unnamed union structure fields with __extension__ to make it
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1206524329 0 # Node ID fb614cdbae0e5c1606161761a364eb300505ed52 # Parent 4b4bfcb18a4c44f67e2f6bd17af12238720f1062 Prefix unnamed union structure fields with __extension__ to make it work properly even in e.g. C99 standard mode. Signed-off-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxxx> xen-unstable changeset: 17288:f5e6cccfdda5537876d6fc2b87ea1124d6043fc8 xen-unstable date: Tue Mar 25 18:02:00 2008 +0000 --- xen/include/public/arch-ia64.h | 12 +++++++----- xen/include/public/arch-x86/xen-x86_64.h | 2 +- xen/include/public/foreign/mkheader.py | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff -r 4b4bfcb18a4c -r fb614cdbae0e xen/include/public/arch-ia64.h --- a/xen/include/public/arch-ia64.h Wed Mar 26 09:35:52 2008 +0000 +++ b/xen/include/public/arch-ia64.h Wed Mar 26 09:38:49 2008 +0000 @@ -73,6 +73,8 @@ DEFINE_XEN_GUEST_HANDLE(xen_pfn_t); #ifndef __ASSEMBLY__ +#define __anonymous_union __extension__ union + typedef unsigned long xen_ulong_t; #ifdef __XEN_TOOLS__ @@ -174,11 +176,11 @@ struct mapped_regs { unsigned long reserved1[29]; unsigned long vhpi; unsigned long reserved2[95]; - union { + __anonymous_union { unsigned long vgr[16]; unsigned long bank1_regs[16]; // bank1 regs (r16-r31) when bank0 active }; - union { + __anonymous_union { unsigned long vbgr[16]; unsigned long bank0_regs[16]; // bank0 regs (r16-r31) when bank1 active }; @@ -189,7 +191,7 @@ struct mapped_regs { unsigned long vpsr; unsigned long vpr; unsigned long reserved4[76]; - union { + __anonymous_union { unsigned long vcr[128]; struct { unsigned long dcr; // CR0 @@ -223,7 +225,7 @@ struct mapped_regs { unsigned long rsv6[46]; }; }; - union { + __anonymous_union { unsigned long reserved5[128]; struct { unsigned long precover_ifs; @@ -617,7 +619,7 @@ struct xen_ia64_opt_feature { struct xen_ia64_opt_feature { unsigned long cmd; /* Which feature */ unsigned char on; /* Switch feature on/off */ - union { + __anonymous_union { struct { /* The page protection bit mask of the pte. * This will be or'ed with the pte. */ diff -r 4b4bfcb18a4c -r fb614cdbae0e xen/include/public/arch-x86/xen-x86_64.h --- a/xen/include/public/arch-x86/xen-x86_64.h Wed Mar 26 09:35:52 2008 +0000 +++ b/xen/include/public/arch-x86/xen-x86_64.h Wed Mar 26 09:38:49 2008 +0000 @@ -141,7 +141,7 @@ struct iret_context { #ifdef __GNUC__ /* Anonymous union includes both 32- and 64-bit names (e.g., eax/rax). */ -#define __DECL_REG(name) union { \ +#define __DECL_REG(name) __extension__ union { \ uint64_t r ## name, e ## name; \ uint32_t _e ## name; \ } diff -r 4b4bfcb18a4c -r fb614cdbae0e xen/include/public/foreign/mkheader.py --- a/xen/include/public/foreign/mkheader.py Wed Mar 26 09:35:52 2008 +0000 +++ b/xen/include/public/foreign/mkheader.py Wed Mar 26 09:38:49 2008 +0000 @@ -38,7 +38,7 @@ inttypes["x86_64"] = { }; header["x86_64"] = """ #ifdef __GNUC__ -# define __DECL_REG(name) union { uint64_t r ## name, e ## name; } +# define __DECL_REG(name) __extension__ union { uint64_t r ## name, e ## name; } # define __align8__ __attribute__((aligned (8))) #else # define __DECL_REG(name) uint64_t r ## name _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |