[ros-diffs] [ktietz] 45694: Make sure that unnamed union/struct are prefix by __GCC_EXTENSION.

ktietz at svn.reactos.org ktietz at svn.reactos.org
Sat Feb 27 14:53:12 CET 2010


Author: ktietz
Date: Sat Feb 27 14:53:12 2010
New Revision: 45694

URL: http://svn.reactos.org/svn/reactos?rev=45694&view=rev
Log:
Make sure that unnamed union/struct are prefix by __GCC_EXTENSION.

Modified:
    branches/header-work/include/ddk/bdasup.h
    branches/header-work/include/ddk/d3dhal.h
    branches/header-work/include/ddk/d3dnthal.h
    branches/header-work/include/ddk/ddkmapi.h
    branches/header-work/include/ddk/ddrawi.h
    branches/header-work/include/ddk/ddrawint.h
    branches/header-work/include/ddk/dmemmgr.h
    branches/header-work/include/ddk/ide.h
    branches/header-work/include/ddk/minitape.h
    branches/header-work/include/ddk/ndis.h
    branches/header-work/include/ddk/ntdddisk.h
    branches/header-work/include/ddk/ntifs.h
    branches/header-work/include/ddk/stdunk.h
    branches/header-work/include/ddk/strmini.h
    branches/header-work/include/ddk/usb.h
    branches/header-work/include/ddk/usb200.h
    branches/header-work/include/ddk/usbdi.h
    branches/header-work/include/ddk/winddk.h

Modified: branches/header-work/include/ddk/bdasup.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/bdasup.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/bdasup.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/bdasup.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -1,5 +1,14 @@
 #if defined(__cplusplus)
 extern "C" {
+#endif
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
 #endif
 
 #define STDMETHODCALLTYPE __stdcall
@@ -30,7 +39,7 @@
 typedef struct _KSM_PIN
 {
     KSMETHOD    Method;
-    union
+    __GNU_EXTENSION union
     {
         ULONG       PinId;
         ULONG       PinType;

Modified: branches/header-work/include/ddk/d3dhal.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/d3dhal.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/d3dhal.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/d3dhal.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -21,6 +21,15 @@
 
 #ifndef _D3DHAL_H_
 #define _D3DHAL_H_
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -787,7 +796,7 @@
 typedef struct _DD_GETD3DQUERYDATA
 {
     DD_GETDRIVERINFO2DATA gdi2;
-    union
+    __GNU_EXTENSION union
     {
         DWORD dwQueryIndex;
         D3DQUERYTYPE QueryType;

Modified: branches/header-work/include/ddk/d3dnthal.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/d3dnthal.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/d3dnthal.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/d3dnthal.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -8,6 +8,15 @@
 #include <ddrawint.h>
 #include <d3dtypes.h>
 #include <d3dcaps.h>
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -22,17 +31,17 @@
 
 typedef struct _D3DNTHAL_CONTEXTCREATEDATA
 {
-    union
+    __GNU_EXTENSION union
     {
         PDD_DIRECTDRAW_GLOBAL lpDDGbl;
         PDD_DIRECTDRAW_LOCAL lpDDLcl;
     };
-    union
+    __GNU_EXTENSION union
     {
         PDD_SURFACE_LOCAL lpDDS;
         PDD_SURFACE_LOCAL lpDDSLcl;
     };
-    union
+    __GNU_EXTENSION union
     {
         PDD_SURFACE_LOCAL lpDDSZ;
         PDD_SURFACE_LOCAL lpDDSZLcl;
@@ -223,7 +232,7 @@
     PDD_SURFACE_LOCAL lpDDCommands;
     DWORD dwCommandOffset;
     DWORD dwCommandLength;
-    union
+    __GNU_EXTENSION union
     {
         PDD_SURFACE_LOCAL lpDDVertex;
         LPVOID lpVertices;
@@ -233,7 +242,7 @@
     DWORD dwReqVertexBufSize;
     DWORD dwReqCommandBufSize;
     LPDWORD lpdwRStates;
-    union
+    __GNU_EXTENSION union
     {
         DWORD dwVertexSize;
         HRESULT ddrval;

Modified: branches/header-work/include/ddk/ddkmapi.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ddkmapi.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ddkmapi.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ddkmapi.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -21,6 +21,14 @@
 #ifndef __DDKMAPI_INCLUDED__
 #define __DDKMAPI_INCLUDED__
 
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #if defined(_DXAPI_)
   #define DXAPI
@@ -219,17 +227,17 @@
   DWORD  dwFormatFlags;
   DWORD  dwFormatFourCC;
   DWORD  dwFormatBitCount;
-  union
+  __GNU_EXTENSION union
   {
     DWORD  dwRBitMask;
     DWORD  dwYBitMask;
   };
-  union
+  __GNU_EXTENSION union
   {
     DWORD  dwGBitMask;
     DWORD  dwUBitMask;
   };
-  union
+  __GNU_EXTENSION union
   {
     DWORD  dwBBitMask;
     DWORD  dwVBitMask;

Modified: branches/header-work/include/ddk/ddrawi.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ddrawi.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ddrawi.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ddrawi.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -21,6 +21,15 @@
 
 #ifndef __DDRAWI_INCLUDED__
 #define __DDRAWI_INCLUDED__
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -203,13 +212,13 @@
 typedef struct _VIDMEM {
     DWORD	dwFlags;
     FLATPTR	fpStart;
-    union {
+    __GNU_EXTENSION union {
 	FLATPTR		fpEnd;
 	DWORD		dwWidth;
     };
     DDSCAPS	ddsCaps;
     DDSCAPS	ddsCapsAlt;
-    union {
+    __GNU_EXTENSION union {
 	LPVMEMHEAP	lpHeap;
 	DWORD		dwHeight;
     };
@@ -1404,21 +1413,21 @@
 typedef struct _DDRAWI_DDRAWSURFACE_GBL {
     DWORD			dwRefCnt;
     DWORD			dwGlobalFlags;
-    union {
+    __GNU_EXTENSION union {
 	LPACCESSRECTLIST	lpRectList;
 	DWORD			    dwBlockSizeY;
 	LONG                lSlicePitch;
     };
-    union {
+    __GNU_EXTENSION union {
 	LPVMEMHEAP		lpVidMemHeap;
 	DWORD			dwBlockSizeX;
     };
-    union {
+    __GNU_EXTENSION union {
 	LPDDRAWI_DIRECTDRAW_GBL	lpDD;
 	LPVOID			lpDDHandle;
     };
     FLATPTR			fpVidMem;
-    union {
+    __GNU_EXTENSION union {
 	LONG			lPitch;
 	DWORD			dwLinearSize;
     };
@@ -1454,7 +1463,7 @@
 
 typedef struct _DDRAWI_DDRAWSURFACE_GBL_MORE {
     DWORD			dwSize;
-    union {
+    __GNU_EXTENSION union {
 	DWORD			dwPhysicalPageTable;
 	FLATPTR			fpPhysicalVidMem;
     };
@@ -1551,15 +1560,15 @@
     DWORD			dwProcessId;
     DWORD			dwFlags;
     DDSCAPS			ddsCaps;
-	union
+    __GNU_EXTENSION union
     {
-    LPDDRAWI_DDRAWPALETTE_INT	lpDDPalette;
+	LPDDRAWI_DDRAWPALETTE_INT	lpDDPalette;
 	LPDDRAWI_DDRAWPALETTE_INT   lp16DDPalette;
-	};
-	union
+    };
+    __GNU_EXTENSION union
     {
-    LPDDRAWI_DDRAWCLIPPER_LCL   lpDDClipper;
-    LPDDRAWI_DDRAWCLIPPER_INT   lp16DDClipper;
+	LPDDRAWI_DDRAWCLIPPER_LCL   lpDDClipper;
+	LPDDRAWI_DDRAWCLIPPER_INT   lp16DDClipper;
     };
     DWORD			dwModeCreatedIn;
     DWORD			dwBackBufferCount;
@@ -1628,7 +1637,7 @@
     LPDDRAWI_DIRECTDRAW_LCL	lpDD_lcl;
     DWORD			dwProcessId;
     LPPALETTEENTRY		lpColorTable;
-    union {
+    __GNU_EXTENSION union {
 	ULONG_PTR		dwReserved1;
 	HPALETTE		hHELGDIPalette;
     };
@@ -1762,7 +1771,7 @@
 
 typedef struct _DDHAL_GETDRIVERSTATEDATA {
     DWORD                       dwFlags;
-    union
+    __GNU_EXTENSION union
     {
         ULONG_PTR               dwhContext;
     };

Modified: branches/header-work/include/ddk/ddrawint.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ddrawint.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ddrawint.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ddrawint.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -5,6 +5,14 @@
 #ifndef __DD_INCLUDED__
 #define __DD_INCLUDED__
 
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 DEFINE_GUID( GUID_MiscellaneousCallbacks,  0xEFD60CC0, 0x49e7, 0x11d0, 0x88, 0x9d, 0x0, 0xaa, 0x0, 0xbb, 0xb7, 0x6a);
 DEFINE_GUID( GUID_Miscellaneous2Callbacks, 0x406B2F00, 0x3E5A, 0x11D1, 0xB6, 0x40, 0x00, 0xAA, 0x00, 0xA1, 0xF9, 0x6A);
@@ -81,14 +89,14 @@
 {
     DWORD          dwFlags;
     FLATPTR        fpStart;
-    union
+    __GNU_EXTENSION union
     {
         FLATPTR    fpEnd;
         DWORD      dwWidth;
     };
     DDSCAPS        ddsCaps;
     DDSCAPS        ddsCapsAlt;
-    union
+    __GNU_EXTENSION union
     {
         struct _VMEMHEAP *lpHeap;
         DWORD      dwHeight;
@@ -128,13 +136,13 @@
 
 typedef struct _DD_SURFACE_GLOBAL
 {
-    union
+    __GNU_EXTENSION union
     {
         DWORD        dwBlockSizeY;
         LONG         lSlicePitch;
     };
 
-    union
+    __GNU_EXTENSION union
     {
         PVIDEOMEMORY lpVidMemHeap;
         DWORD        dwBlockSizeX;
@@ -142,7 +150,7 @@
     };
 
     FLATPTR          fpVidMem;
-    union
+    __GNU_EXTENSION union
     {
         LONG         lPitch;
         DWORD        dwLinearSize;
@@ -174,12 +182,12 @@
 	DWORD              dwFlags;
 	DDSCAPS            ddsCaps;
 	ULONG_PTR          dwReserved1;
-	union
+	__GNU_EXTENSION union
 	{
 		DDCOLORKEY     ddckCKSrcOverlay;
 		DDCOLORKEY     ddckCKSrcBlt;
 	};
-	union
+	__GNU_EXTENSION union
 	{
 		DDCOLORKEY     ddckCKDestOverlay;
 		DDCOLORKEY     ddckCKDestBlt;
@@ -591,7 +599,7 @@
 typedef struct _DD_GETDRIVERSTATEDATA
 {
 	DWORD                     dwFlags;
-	union
+	__GNU_EXTENSION union
 	{
 		PDD_DIRECTDRAW_GLOBAL lpDD;
 		DWORD_PTR             dwhContext;

Modified: branches/header-work/include/ddk/dmemmgr.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/dmemmgr.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/dmemmgr.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/dmemmgr.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -11,6 +11,15 @@
 
 #ifndef __DMEMMGR_INCLUDED__
 #define __DMEMMGR_INCLUDED__
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -70,7 +79,7 @@
 
 typedef struct _SURFACEALIGNMENT
 {
-  union
+  __GNU_EXTENSION union
   {
     struct
     {

Modified: branches/header-work/include/ddk/ide.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ide.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ide.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ide.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -22,6 +22,15 @@
 
 #ifndef __IDE_H
 #define __IDE_H
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -104,7 +113,7 @@
   USHORT UnformattedBytesPerTrack;   /* 08 */
   USHORT UnformattedBytesPerSector;  /* 10 */
   USHORT NumSectorsPerTrack;         /* 12 */
-  union
+  __GNU_EXTENSION union
   {
     USHORT VendorUnique1[3];         /* 14 */
     struct

Modified: branches/header-work/include/ddk/minitape.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/minitape.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/minitape.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/minitape.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -21,6 +21,15 @@
  */
 #ifndef __MINITAPE_H
 #define __MINITAPE_H
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -77,9 +86,9 @@
 	UCHAR  DeviceTypeQualifier : 3;
 	UCHAR  DeviceTypeModifier : 7;
 	UCHAR  RemovableMedia : 1;
-	union {
+	__GNU_EXTENSION union {
 		UCHAR  Versions;
-		struct {
+		__GNU_EXTENSION struct {
 			UCHAR  ANSIVersion : 3;
 			UCHAR  ECMAVersion : 3;
 			UCHAR  ISOVersion : 2;

Modified: branches/header-work/include/ddk/ndis.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ndis.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ndis.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ndis.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -31,6 +31,15 @@
 
 #ifndef __NDIS_H
 #define __NDIS_H
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #include "ntddk.h"
 #include "ntddndis.h"
@@ -238,8 +247,8 @@
 } NDIS_RW_LOCK_REFCOUNT;
 
 typedef struct _NDIS_RW_LOCK {
-  union {
-    struct {
+  __GNU_EXTENSION union {
+    __GNU_EXTENSION struct {
       KSPIN_LOCK  SpinLock;
       PVOID  Context;
     };
@@ -380,16 +389,16 @@
 
 typedef struct _NDIS_PACKET {
   NDIS_PACKET_PRIVATE  Private;
-  union {
-    struct {
+  __GNU_EXTENSION union {
+    __GNU_EXTENSION struct {
       UCHAR  MiniportReserved[2 * sizeof(PVOID)];
       UCHAR  WrapperReserved[2 * sizeof(PVOID)];
     };
-    struct {
+    __GNU_EXTENSION struct {
       UCHAR  MiniportReservedEx[3 * sizeof(PVOID)];
       UCHAR  WrapperReservedEx[sizeof(PVOID)];
     };
-    struct {
+    __GNU_EXTENSION struct {
       UCHAR  MacReserved[4 * sizeof(PVOID)];
     };
   };
@@ -474,7 +483,7 @@
  } DATA;
 #if (defined(NDIS50) || defined(NDIS51))
   UCHAR  NdisReserved[9 * sizeof(PVOID)];
-  union {
+  __GNU_EXTENSION union {
     UCHAR  CallMgrReserved[2 * sizeof(PVOID)];
     UCHAR  ProtocolReserved[2 * sizeof(PVOID)];
   };

Modified: branches/header-work/include/ddk/ntdddisk.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ntdddisk.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ntdddisk.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ntdddisk.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -22,6 +22,15 @@
 
 #ifndef __NTDDDISK_H
 #define __NTDDDISK_H
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #include "ntddstor.h"
 
@@ -394,7 +403,7 @@
 typedef struct _DRIVE_LAYOUT_INFORMATION_EX {
   ULONG  PartitionStyle;
   ULONG  PartitionCount;
-  union {
+  __GNU_EXTENSION union {
     DRIVE_LAYOUT_INFORMATION_MBR  Mbr;
     DRIVE_LAYOUT_INFORMATION_GPT  Gpt;
   };

Modified: branches/header-work/include/ddk/ntifs.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/ntifs.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/ntifs.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/ntifs.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -23,6 +23,15 @@
 #ifndef _NTIFS_
 #define _NTIFS_
 #define _GNU_NTIFS_
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #define NTKERNELAPI DECLSPEC_IMPORT
 
@@ -962,7 +971,7 @@
     ULONG  ReparseTag;
     USHORT ReparseDataLength;
     USHORT Reserved;
-    union {
+    __GNU_EXTENSION union {
         struct {
             USHORT SubstituteNameOffset;
             USHORT SubstituteNameLength;
@@ -1351,11 +1360,11 @@
     LONGLONG        FileReference;
     UCHAR           ObjectId[16];
     _ANONYMOUS_UNION union {
-        struct {
+        __GNU_EXTENSION struct {
             UCHAR   BirthVolumeId[16];
             UCHAR   BirthObjectId[16];
             UCHAR   DomainId[16];
-        } ;
+        };
         UCHAR       ExtendedInfo[48];
     } DUMMYUNIONNAME;
 } FILE_OBJECTID_INFORMATION, *PFILE_OBJECTID_INFORMATION;
@@ -1985,13 +1994,13 @@
         } s2;
         ULONG ZeroInit;
     } u2;
-    union
+    __GNU_EXTENSION union
     {
         LPC_CLIENT_ID ClientId;
         double DoNotUseThisField;
     };
     ULONG MessageId;
-    union
+    __GNU_EXTENSION union
     {
         LPC_SIZE_T ClientViewSize;
         ULONG CallbackId;

Modified: branches/header-work/include/ddk/stdunk.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/stdunk.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/stdunk.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/stdunk.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -12,6 +12,15 @@
 #define STDUNK_H
 
 #include <punknown.h>
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 /* ===============================================================
     INonDelegatingUnknown interface
@@ -110,7 +119,7 @@
 
 typedef struct CUnknown
 {
-    union
+    __GNU_EXTENSION union
     {
         IUnknown IUnknown;
         INonDelegatingUnknown INonDelegatingUnknown;

Modified: branches/header-work/include/ddk/strmini.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/strmini.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/strmini.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/strmini.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -4,6 +4,15 @@
 #include <ntddk.h>
 #include <windef.h>
 #include <ks.h>
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #define STREAMAPI __stdcall
 #define STREAM_SYSTEM_TIME_MASK   ((STREAM_SYSTEM_TIME)0x00000001FFFFFFFF)
@@ -61,7 +70,7 @@
     BOOLEAN Enable;
     PKSEVENT_ENTRY EventEntry;
     PKSEVENTDATA EventData;
-    union
+    __GNU_EXTENSION union
     {
         struct _HW_STREAM_OBJECT * StreamObject;
         struct _HW_DEVICE_EXTENSION *DeviceExtension;
@@ -285,7 +294,7 @@
     ULONG           Flags;
     PVOID       HwInstanceExtension;
 
-    union
+    __GNU_EXTENSION union
 	{
         ULONG           NumberOfBytesToTransfer;
         ULONG           ActualBytesTransferred;
@@ -376,11 +385,11 @@
 
 typedef struct _HW_INITIALIZATION_DATA {
 #if (NTDDI_VERSION >= NTDDI_WINXP)
-    union
+    __GNU_EXTENSION union
+    {
+        ULONG           HwInitializationDataSize;
+        __GNU_EXTENSION struct
 	{
-        ULONG           HwInitializationDataSize;
-        struct
-		{
             USHORT      SizeOfThisPacket;
             USHORT      StreamClassVersion;
         };

Modified: branches/header-work/include/ddk/usb.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/usb.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/usb.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/usb.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -2,6 +2,15 @@
 
 #ifndef   __USB_H__
 #define   __USB_H__
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __USBDI_H__
 error
@@ -323,7 +332,7 @@
 
 typedef struct _URB
 {
-  union
+  __GNU_EXTENSION union
   {
       struct _URB_HEADER
          UrbHeader;

Modified: branches/header-work/include/ddk/usb200.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/usb200.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/usb200.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/usb200.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -1,5 +1,14 @@
 #ifndef   __USB200_H__
 #define   __USB200_H__
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #include "usb100.h"
 
@@ -37,7 +46,7 @@
   UCHAR bRequest;
   union _wValue
   {
-    struct
+    __GNU_EXTENSION struct
     {
       UCHAR LowByte;
       UCHAR HiByte;
@@ -46,7 +55,7 @@
   } wValue;
   union _wIndex
   {
-    struct
+    __GNU_EXTENSION struct
     {
       UCHAR LowByte;
       UCHAR HiByte;

Modified: branches/header-work/include/ddk/usbdi.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/usbdi.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/usbdi.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/usbdi.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -22,6 +22,15 @@
 
 #ifndef __USBDI_H
 #define __USBDI_H
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __USB_H
 #error usb.h cannot be included with usbdi.h
@@ -372,7 +381,7 @@
 } USBD_VERSION_INFORMATION, *PUSBD_VERSION_INFORMATION;
 
 typedef struct _URB {
-	union {
+	__GNU_EXTENSION union {
 		struct _URB_HEADER  UrbHeader;
 		struct _URB_SELECT_INTERFACE  UrbSelectInterface;
 		struct _URB_SELECT_CONFIGURATION  UrbSelectConfiguration;

Modified: branches/header-work/include/ddk/winddk.h
URL: http://svn.reactos.org/svn/reactos/branches/header-work/include/ddk/winddk.h?rev=45694&r1=45693&r2=45694&view=diff
==============================================================================
--- branches/header-work/include/ddk/winddk.h [iso-8859-1] (original)
+++ branches/header-work/include/ddk/winddk.h [iso-8859-1] Sat Feb 27 14:53:12 2010
@@ -22,6 +22,15 @@
 
 #ifndef __WINDDK_H
 #define __WINDDK_H
+
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
 
 #ifdef __cplusplus
 extern "C" {
@@ -556,7 +565,7 @@
     ULONG SystemCall;
     ULONG SystemCallReturn;
     ULONGLONG SystemCallPad[3];
-    union {
+    __GNU_EXTENSION union {
         volatile KSYSTEM_TIME TickCount;
         volatile ULONG64 TickCountQuad;
     };
@@ -569,10 +578,10 @@
     USHORT UserModeGlobalLogger[8];
     ULONG HeapTracingPid[2];
     ULONG CritSecTracingPid[2];
-    union
+    __GNU_EXTENSION union
     {
         ULONG SharedDataFlags;
-        struct
+        __GNU_EXTENSION struct
         {
             ULONG DbgErrorPortPresent:1;
             ULONG DbgElevationEnabled:1;
@@ -1276,9 +1285,9 @@
     PKTHREAD Owner;
     ULONG Contention;
     KGATE Gate;
-    union
+    __GNU_EXTENSION union
     {
-        struct
+        __GNU_EXTENSION struct
         {
             SHORT KernelApcDisable;
             SHORT SpecialApcDisable;
@@ -4591,7 +4600,7 @@
 	ULONG StackBase;
 	ULONG StackLimit;
 	ULONG SubSystemTib;
-	union {
+	__GNU_EXTENSION union {
 		ULONG FiberData;
 		ULONG Version;
 	};
@@ -4604,7 +4613,7 @@
 	ULONG64 StackBase;
 	ULONG64 StackLimit;
 	ULONG64 SubSystemTib;
-	union {
+	__GNU_EXTENSION union {
 		ULONG64 FiberData;
 		ULONG Version;
 	};
@@ -4705,7 +4714,7 @@
 
 typedef struct _PROCESS_DEVICEMAP_INFORMATION
 {
-    union
+    __GNU_EXTENSION union
     {
         struct
         {
@@ -5382,10 +5391,10 @@
 
 typedef struct _KPCR
 {
-    union
+    __GNU_EXTENSION union
     {
         NT_TIB NtTib;
-        struct
+        __GNU_EXTENSION struct
         {
             union _KGDTENTRY64 *GdtBase;
             struct _KTSS64 *TssBase;




More information about the Ros-diffs mailing list