diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog index 7a4b941d6..c923ec3c0 100644 --- a/winsup/w32api/ChangeLog +++ b/winsup/w32api/ChangeLog @@ -1,3 +1,48 @@ +2003-07-17 Danny Smith + + Clean up warnings in ddk. + + * include/ddk/atm.h (_ATM_AAL_OOB_INFO): Add _ANONYMOUS_UNION, + conditional on __cplusplus. + * include/ddk/scsi.h: Add _ANONYMOUS_UNION and _ANONYMOUS_STRUCT + defines, throughout. + (_CDB): Add _ANONYMOUS_UNION, conditional on __cplusplus. + * include/ddk/cfg.h (_PNP_VETO_TYPE): Remove extra comma. + * include/ddk/cfgmgr32.h: Change C++ comment style to ISO C. + * include/ddk/ddkmapi.h (_DDLOCKOUT): Add _ANONYMOUS_UNION defines. + * include/ddk/hidpi.h: Add _ANONYMOUS_UNION and _ANONYMOUS_STRUCT + defines, throughout. + * include/ddk/ndis.h: Add _ANONYMOUS_UNION and _ANONYMOUS_STRUCT + defines, throughout. Remove trailing semicolon from *_S 'structure' + macro expansion, throughout. Remove trailing semicolon from + DECLARE_UNKNOWN_STRUCT macro expansion. + * include/ddk/ndiswan.h (_NDIS_WAN_COMPRESS_INFO): Add + _ANONYMOUS_UNION. + * include/ddk/ntapi.h (_PROCESS_DEVICEMAP_INFORMATION, + _PROCESS_SESSION_INFORMATION): Add _ANONYMOUS_UNION. + * include/ddk/ntddcdrm.h (CDROM_TOC_CD_TEXT_DATA_BLOCK): + Add _ANONYMOUS_UNION. + * include/ddk/ntdddisk.h: Add _ANONYMOUS_UNION, throughout. + * include/ddk/ntddmou.h: Add _ANONYMOUS_UNION, throughout. + * include/ddk/ntifs.h: Add _ANONYMOUS_UNION, throughout. + (ZwQueryObject): Change 2nd param to OBJECT_INFORMATION_CLASS, to + match proto in ntapi.h. + (ZwSetInformationObject): Likewise. + * include/ddk/srb.h (SCSI_REQUEST_BLOCK): Add _ANONYMOUS_UNION. + (SCSI_ADAPTER_CONTROL_TYPE): Add __extension__. + * include/ddk/tdikrnl.h (TDI20_CLIENT_INTERFACE_INFO): Add + _ANONYMOUS_UNION and _ANONYMOUS_STRUCT. + * include/ddk/usb.h (USB): Add _ANONYMOUS_UNION. + * include/ddk/usbcamdi.h (USBCAMD_CamControlFlags): Remove + last comma. + * include/ddk/video.h (STATUS_BLOCK): Add _ANONYMOUS_UNION. + * include/ddk/winddk.h (DECLARE_INTERNAL_OBJECT): Remove + trailing semicolon when expanding macro. + (GENERAL_LOOKASIDE_S): Likewise. + Add _ANONYMOUS_UNION and _ANONYMOUS_STRUCT, throughout. + Change inline to __inline, throughout. + * include/ddk/winnt4.h: Change inline to __inline, throughout. + 2003-07-13 Casper S. Hornstrup * include/ddk/ntifs.h (KeInsertQueueApc): Make return type diff --git a/winsup/w32api/include/ddk/atm.h b/winsup/w32api/include/ddk/atm.h index a9b62f356..711be8137 100644 --- a/winsup/w32api/include/ddk/atm.h +++ b/winsup/w32api/include/ddk/atm.h @@ -132,9 +132,16 @@ typedef struct _AAL_PARAMETERS_IE { } AALSpecificParameters; } AAL_PARAMETERS_IE, *PAAL_PARAMETERS_IE; + +/* FIXME: Should the union be anonymous in C++ too? If so, + can't define named types _ATM_AAL5_INFO and _ATM_AAL0_INFO + within anonymous union for C++. */ . typedef struct _ATM_AAL_OOB_INFO { ATM_AAL_TYPE AalType; +#ifndef __cplusplus + _ANONYMOUS_UNION +#endif union { struct _ATM_AAL5_INFO { BOOLEAN CellLossPriority; @@ -146,10 +153,10 @@ typedef struct _ATM_AAL_OOB_INFO BOOLEAN CellLossPriority; UCHAR PayLoadTypeIdentifier; } ATM_AAL0_INFO; -#ifdef __cplusplus - } u; +#ifndef __cplusplus + } DUMMYUNIONNAME; #else - }; + } u; #endif } ATM_AAL_OOB_INFO, *PATM_AAL_OOB_INFO; diff --git a/winsup/w32api/include/ddk/cfg.h b/winsup/w32api/include/ddk/cfg.h index 603f491f0..f58a08958 100644 --- a/winsup/w32api/include/ddk/cfg.h +++ b/winsup/w32api/include/ddk/cfg.h @@ -111,7 +111,7 @@ typedef enum _PNP_VETO_TYPE { PNP_VetoIllegalDeviceRequest, PNP_VetoInsufficientPower, PNP_VetoNonDisableable, - PNP_VetoLegacyDriver, + PNP_VetoLegacyDriver } PNP_VETO_TYPE, *PPNP_VETO_TYPE; #pragma pack(pop) diff --git a/winsup/w32api/include/ddk/cfgmgr32.h b/winsup/w32api/include/ddk/cfgmgr32.h index f35351896..a048bb492 100644 --- a/winsup/w32api/include/ddk/cfgmgr32.h +++ b/winsup/w32api/include/ddk/cfgmgr32.h @@ -1044,14 +1044,14 @@ CM_Get_DevNode_Status_Ex( #define CM_Get_DevInst_Status_Ex CM_Get_DevNode_Status_Ex /* CM_Get_First_Log_Conf.ulFlags constants */ -#define BASIC_LOG_CONF 0x00000000 // Specifies the req list. -#define FILTERED_LOG_CONF 0x00000001 // Specifies the filtered req list. -#define ALLOC_LOG_CONF 0x00000002 // Specifies the Alloc Element. -#define BOOT_LOG_CONF 0x00000003 // Specifies the RM Alloc Element. -#define FORCED_LOG_CONF 0x00000004 // Specifies the Forced Log Conf -#define OVERRIDE_LOG_CONF 0x00000005 // Specifies the Override req list. -#define NUM_LOG_CONF 0x00000006 // Number of Log Conf type -#define LOG_CONF_BITS 0x00000007 // The bits of the log conf type. +#define BASIC_LOG_CONF 0x00000000 /* Specifies the req list. */ +#define FILTERED_LOG_CONF 0x00000001 /* Specifies the filtered req list. */ +#define ALLOC_LOG_CONF 0x00000002 /* Specifies the Alloc Element. */ +#define BOOT_LOG_CONF 0x00000003 /* Specifies the RM Alloc Element. */ +#define FORCED_LOG_CONF 0x00000004 /* Specifies the Forced Log Conf */ +#define OVERRIDE_LOG_CONF 0x00000005 /* Specifies the Override req list. */ +#define NUM_LOG_CONF 0x00000006 /* Number of Log Conf type */ +#define LOG_CONF_BITS 0x00000007 /* The bits of the log conf type. */ CMAPI CONFIGRET diff --git a/winsup/w32api/include/ddk/ddkmapi.h b/winsup/w32api/include/ddk/ddkmapi.h index d7bcfa7d4..feeff8763 100644 --- a/winsup/w32api/include/ddk/ddkmapi.h +++ b/winsup/w32api/include/ddk/ddkmapi.h @@ -204,18 +204,18 @@ typedef struct _DDLOCKOUT { DWORD dwFormatFlags; DWORD dwFormatFourCC; DWORD dwFormatBitCount; - union { + _ANONYMOUS_UNION union { DWORD dwRBitMask; DWORD dwYBitMask; - }; - union { + } DUMMYUNIONNAME; + _ANONYMOUS_UNION union { DWORD dwGBitMask; DWORD dwUBitMask; - }; - union { + } DUMMYUNIONNAME2; + _ANONYMOUS_UNION union { DWORD dwBBitMask; DWORD dwVBitMask; - }; + } DUMMYUNIONNAME3; } DDLOCKOUT, FAR *LPDDLOCKOUT; /* LPDD_NOTIFYCALLBACK.dwFlags constants */ diff --git a/winsup/w32api/include/ddk/hidpi.h b/winsup/w32api/include/ddk/hidpi.h index 15bb20561..2f8ea5732 100644 --- a/winsup/w32api/include/ddk/hidpi.h +++ b/winsup/w32api/include/ddk/hidpi.h @@ -57,8 +57,8 @@ typedef enum _HIDP_KEYBOARD_DIRECTION { } HIDP_KEYBOARD_DIRECTION; typedef struct _HIDP_KEYBOARD_MODIFIER_STATE { - union { - struct { + _ANONYMOUS_UNION union { + _ANONYMOUS_STRUCT struct { ULONG LeftControl : 1; ULONG LeftShift : 1; ULONG LeftAlt : 1; @@ -71,9 +71,9 @@ typedef struct _HIDP_KEYBOARD_MODIFIER_STATE { ULONG ScollLock : 1; ULONG NumLock : 1; ULONG Reserved : 21; - }; + } DUMMYSTRUCTNAME; ULONG ul; - }; + } DUMMYUNIONNAME; } HIDP_KEYBOARD_MODIFIER_STATE, *PHIDP_KEYBOARD_MODIFIER_STATE; typedef BOOLEAN (DDKAPI *PHIDP_INSERT_SCANCODES)( @@ -121,7 +121,7 @@ typedef struct _HIDP_BUTTON_CAPS { BOOLEAN IsDesignatorRange; BOOLEAN IsAbsolute; ULONG Reserved[10]; - union { + _ANONYMOUS_UNION union { struct { USAGE UsageMin, UsageMax; USHORT StringMin, StringMax; @@ -134,7 +134,7 @@ typedef struct _HIDP_BUTTON_CAPS { USHORT DesignatorIndex, Reserved3; USHORT DataIndex, Reserved4; } NotRange; - }; + } DUMMYUNIONNAME; } HIDP_BUTTON_CAPS, *PHIDP_BUTTON_CAPS; typedef struct _HIDP_CAPS { @@ -159,10 +159,10 @@ typedef struct _HIDP_CAPS { typedef struct _HIDP_DATA { USHORT DataIndex; USHORT Reserved; - union { + _ANONYMOUS_UNION union { ULONG RawValue; BOOLEAN On; - }; + } DUMMYUNIONNAME; } HIDP_DATA, *PHIDP_DATA; typedef struct _HIDP_EXTENDED_ATTRIBUTES { @@ -209,7 +209,7 @@ typedef struct _HIDP_VALUE_CAPS { ULONG Units; LONG LogicalMin, LogicalMax; LONG PhysicalMin, PhysicalMax; - union { + _ANONYMOUS_UNION union { struct { USAGE UsageMin, UsageMax; USHORT StringMin, StringMax; @@ -222,7 +222,7 @@ typedef struct _HIDP_VALUE_CAPS { USHORT DesignatorIndex, Reserved3; USHORT DataIndex, Reserved4; } NotRange; - }; + } DUMMYUNIONNAME; } HIDP_VALUE_CAPS, *PHIDP_VALUE_CAPS; typedef enum _HIDP_REPORT_TYPE { @@ -517,7 +517,7 @@ DDKAPI HidP_SetUsages( IN HIDP_REPORT_TYPE ReportType, IN USAGE UsagePage, - IN USHORT LinkCollection, // Optional + IN USHORT LinkCollection, /* Optional */ IN PUSAGE UsageList, IN OUT PULONG UsageLength, IN PHIDP_PREPARSED_DATA PreparsedData, diff --git a/winsup/w32api/include/ddk/ndis.h b/winsup/w32api/include/ddk/ndis.h index d1d46515f..216249df4 100644 --- a/winsup/w32api/include/ddk/ndis.h +++ b/winsup/w32api/include/ddk/ndis.h @@ -433,10 +433,10 @@ typedef struct MediaSpecificInformation { } MEDIA_SPECIFIC_INFORMATION; typedef struct _NDIS_PACKET_OOB_DATA { - union { + _ANONYMOUS_UNION union { ULONGLONG TimeToSend; ULONGLONG TimeSent; - }; + } DUMMYUNIONNAME; ULONGLONG TimeReceived; UINT HeaderSize; UINT SizeMediaSpecificInfo; @@ -759,7 +759,7 @@ typedef struct _CO_SAP { } CO_SAP, *PCO_SAP; typedef struct _NDIS_IPSEC_PACKET_INFO { - union { + _ANONYMOUS_UNION union { struct { NDIS_HANDLE OffloadHandle; NDIS_HANDLE NextOffloadHandle; @@ -770,7 +770,7 @@ typedef struct _NDIS_IPSEC_PACKET_INFO { ULONG NEXT_CRYPTO_DONE : 1; ULONG CryptoStatus; } Receive; - }; + } DUMMYUNIONNAME; } NDIS_IPSEC_PACKET_INFO, *PNDIS_IPSEC_PACKET_INFO; /* NDIS_MAC_FRAGMENT.Errors constants */ @@ -800,7 +800,7 @@ typedef struct _NDIS_MAC_LINE_UP { } NDIS_MAC_LINE_UP, *PNDIS_MAC_LINE_UP; typedef struct _NDIS_PACKET_8021Q_INFO { - union { + _ANONYMOUS_UNION union { struct { UINT32 UserPriority : 3; UINT32 CanonicalFormatId : 1; @@ -808,7 +808,7 @@ typedef struct _NDIS_PACKET_8021Q_INFO { UINT32 Reserved : 16; } TagHeader; PVOID Value; - }; + } DUMMYUNIONNAME; } NDIS_PACKET_8021Q_INFO, *PNDIS_PACKET_8021Q_INFO; typedef enum _NDIS_PER_PACKET_INFO { @@ -988,7 +988,7 @@ typedef struct _NDIS_TASK_TCP_LARGE_SEND { } NDIS_TASK_TCP_LARGE_SEND, *PNDIS_TASK_TCP_LARGE_SEND; typedef struct _NDIS_TCP_IP_CHECKSUM_PACKET_INFO { - union { + _ANONYMOUS_UNION union { struct { ULONG NdisPacketChecksumV4 : 1; ULONG NdisPacketChecksumV6 : 1; @@ -1007,7 +1007,7 @@ typedef struct _NDIS_TCP_IP_CHECKSUM_PACKET_INFO { ULONG NdisPacketLoopback : 1; } Receive; ULONG Value; - }; + } DUMMYUNIONNAME; } NDIS_TCP_IP_CHECKSUM_PACKET_INFO, *PNDIS_TCP_IP_CHECKSUM_PACKET_INFO; typedef struct _NDIS_WAN_CO_FRAGMENT { @@ -1347,33 +1347,33 @@ typedef VOID DDKAPI #define NDIS30_PROTOCOL_CHARACTERISTICS_S \ UCHAR MajorNdisVersion; \ UCHAR MinorNdisVersion; \ - union { \ + _ANONYMOUS_UNION union { \ UINT Reserved; \ UINT Flags; \ - }; \ + } DUMMYUNIONNAME; \ OPEN_ADAPTER_COMPLETE_HANDLER OpenAdapterCompleteHandler; \ CLOSE_ADAPTER_COMPLETE_HANDLER CloseAdapterCompleteHandler; \ - union { \ + _ANONYMOUS_UNION union { \ SEND_COMPLETE_HANDLER SendCompleteHandler; \ WAN_SEND_COMPLETE_HANDLER WanSendCompleteHandler; \ - }; \ - union { \ + } DUMMYUNIONNAME2; \ + _ANONYMOUS_UNION union { \ TRANSFER_DATA_COMPLETE_HANDLER TransferDataCompleteHandler; \ WAN_TRANSFER_DATA_COMPLETE_HANDLER WanTransferDataCompleteHandler; \ - }; \ + } DUMMYUNIONNAME3; \ RESET_COMPLETE_HANDLER ResetCompleteHandler; \ REQUEST_COMPLETE_HANDLER RequestCompleteHandler; \ - union { \ + _ANONYMOUS_UNION union { \ RECEIVE_HANDLER ReceiveHandler; \ WAN_RECEIVE_HANDLER WanReceiveHandler; \ - }; \ + } DUMMYUNIONNAME4; \ RECEIVE_COMPLETE_HANDLER ReceiveCompleteHandler; \ STATUS_HANDLER StatusHandler; \ STATUS_COMPLETE_HANDLER StatusCompleteHandler; \ NDIS_STRING Name; typedef struct _NDIS30_PROTOCOL_CHARACTERISTICS { - NDIS30_PROTOCOL_CHARACTERISTICS_S; + NDIS30_PROTOCOL_CHARACTERISTICS_S } NDIS30_PROTOCOL_CHARACTERISTICS, *PNDIS30_PROTOCOL_CHARACTERISTICS; @@ -1423,7 +1423,7 @@ typedef VOID DDKAPI #else /* !__cplusplus */ #define NDIS40_PROTOCOL_CHARACTERISTICS_S \ - NDIS30_PROTOCOL_CHARACTERISTICS_S; \ + NDIS30_PROTOCOL_CHARACTERISTICS_S \ RECEIVE_PACKET_HANDLER ReceivePacketHandler; \ BIND_HANDLER BindAdapterHandler; \ UNBIND_HANDLER UnbindAdapterHandler; \ @@ -1433,7 +1433,7 @@ typedef VOID DDKAPI #endif /* __cplusplus */ typedef struct _NDIS40_PROTOCOL_CHARACTERISTICS { - NDIS40_PROTOCOL_CHARACTERISTICS_S; + NDIS40_PROTOCOL_CHARACTERISTICS_S } NDIS40_PROTOCOL_CHARACTERISTICS, *PNDIS40_PROTOCOL_CHARACTERISTICS; /* Prototypes for NDIS 5.0 protocol characteristics */ @@ -1476,7 +1476,7 @@ typedef VOID DDKAPI #else /* !__cplusplus */ #define NDIS50_PROTOCOL_CHARACTERISTICS_S \ - NDIS40_PROTOCOL_CHARACTERISTICS_S; \ + NDIS40_PROTOCOL_CHARACTERISTICS_S \ PVOID ReservedHandlers[4]; \ CO_SEND_COMPLETE_HANDLER CoSendCompleteHandler; \ CO_STATUS_HANDLER CoStatusHandler; \ @@ -1486,7 +1486,7 @@ typedef VOID DDKAPI #endif /* !__cplusplus */ typedef struct _NDIS50_PROTOCOL_CHARACTERISTICS { - NDIS50_PROTOCOL_CHARACTERISTICS_S; + NDIS50_PROTOCOL_CHARACTERISTICS_S } NDIS50_PROTOCOL_CHARACTERISTICS, *PNDIS50_PROTOCOL_CHARACTERISTICS; #if defined(NDIS50) || defined(NDIS51) @@ -1499,7 +1499,7 @@ typedef struct _NDIS_PROTOCOL_CHARACTERISTICS { } NDIS_PROTOCOL_CHARACTERISTICS, *PNDIS_PROTOCOL_CHARACTERISTICS; #elif defined(NDIS30) typedef struct _NDIS_PROTOCOL_CHARACTERISTICS { - NDIS30_PROTOCOL_CHARACTERISTICS_S; + NDIS30_PROTOCOL_CHARACTERISTICS_S } NDIS_PROTOCOL_CHARACTERISTICS, *PNDIS_PROTOCOL_CHARACTERISTICS; #else #error Define an NDIS version @@ -3731,7 +3731,7 @@ typedef NDIS_STATUS DDKAPI } _UNION_NAME(u2); typedef struct _NDIS30_MINIPORT_CHARACTERISTICS { - NDIS30_MINIPORT_CHARACTERISTICS_S; + NDIS30_MINIPORT_CHARACTERISTICS_S } NDIS30_MINIPORT_CHARACTERISTICS, *PSNDIS30_MINIPORT_CHARACTERISTICS; @@ -3767,7 +3767,7 @@ typedef VOID DDKAPI #else /* !__cplusplus */ #define NDIS40_MINIPORT_CHARACTERISTICS_S \ - NDIS30_MINIPORT_CHARACTERISTICS_S; \ + NDIS30_MINIPORT_CHARACTERISTICS_S \ W_RETURN_PACKET_HANDLER ReturnPacketHandler; \ W_SEND_PACKETS_HANDLER SendPacketsHandler; \ W_ALLOCATE_COMPLETE_HANDLER AllocateCompleteHandler; @@ -3775,7 +3775,7 @@ typedef VOID DDKAPI #endif /* !__cplusplus */ typedef struct _NDIS40_MINIPORT_CHARACTERISTICS { - NDIS40_MINIPORT_CHARACTERISTICS_S; + NDIS40_MINIPORT_CHARACTERISTICS_S } NDIS40_MINIPORT_CHARACTERISTICS, *PNDIS40_MINIPORT_CHARACTERISTICS; @@ -3815,7 +3815,7 @@ typedef NDIS_STATUS DDKAPI #ifdef __cplusplus #define NDIS50_MINIPORT_CHARACTERISTICS_S \ - NDIS40_MINIPORT_CHARACTERISTICS_S Ndis40Chars; \ + NDIS40_MINIPORT_CHARACTERISTICS Ndis40Chars; \ W_CO_CREATE_VC_HANDLER CoCreateVcHandler; \ W_CO_DELETE_VC_HANDLER CoDeleteVcHandler; \ W_CO_ACTIVATE_VC_HANDLER CoActivateVcHandler; \ @@ -3826,7 +3826,7 @@ typedef NDIS_STATUS DDKAPI #else /* !__cplusplus */ #define NDIS50_MINIPORT_CHARACTERISTICS_S \ - NDIS40_MINIPORT_CHARACTERISTICS_S; \ + NDIS40_MINIPORT_CHARACTERISTICS_S \ W_CO_CREATE_VC_HANDLER CoCreateVcHandler; \ W_CO_DELETE_VC_HANDLER CoDeleteVcHandler; \ W_CO_ACTIVATE_VC_HANDLER CoActivateVcHandler; \ @@ -3837,7 +3837,7 @@ typedef NDIS_STATUS DDKAPI #endif /* !__cplusplus */ typedef struct _NDIS50_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S; + NDIS50_MINIPORT_CHARACTERISTICS_S } NDIS50_MINIPORT_CHARACTERISTICS, *PSNDIS50_MINIPORT_CHARACTERISTICS; @@ -3851,19 +3851,19 @@ typedef VOID DDKAPI #if defined(NDIS51) typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S; + NDIS50_MINIPORT_CHARACTERISTICS_S } NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; #elif defined(NDIS50) typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S; + NDIS50_MINIPORT_CHARACTERISTICS_S } NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; #elif defined(NDIS40) typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS40_MINIPORT_CHARACTERISTICS_S; + NDIS40_MINIPORT_CHARACTERISTICS_S } NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; #elif defined(NDIS30) typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS30_MINIPORT_CHARACTERISTICS_S; + NDIS30_MINIPORT_CHARACTERISTICS_S } NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; #endif /* NDIS30 */ @@ -3993,7 +3993,7 @@ typedef struct _NDIS_BIND_PATHS { #define ETH_LENGTH_OF_ADDRESS 6 -DECLARE_UNKNOWN_STRUCT(ETH_BINDING_INFO); +DECLARE_UNKNOWN_STRUCT(ETH_BINDING_INFO) DECLARE_UNKNOWN_PROTOTYPE(ETH_ADDRESS_CHANGE) DECLARE_UNKNOWN_PROTOTYPE(ETH_FILTER_CHANGE) @@ -4182,10 +4182,10 @@ typedef struct _NDIS_LOG { } NDIS_LOG, *PNDIS_LOG; typedef struct _FILTERDBS { - union { + _ANONYMOUS_UNION union { PETH_FILTER EthDB; PNULL_FILTER NullDB; - }; + } DUMMYUNIONNAME; PTR_FILTER TrDB; PFDDI_FILTER FddiDB; #if ARCNET @@ -4288,12 +4288,12 @@ struct _NDIS_MINIPORT_BLOCK { UCHAR TrResetRing; UCHAR ArcnetAddress; UCHAR XState; - union { + _ANONYMOUS_UNION union { #if ARCNET PNDIS_ARC_BUF ArcBuf; #endif PVOID BusInterface; - }; + } DUMMYUNIONNAME; PNDIS_LOG Log; ULONG SlotNumber; PCM_RESOURCE_LIST AllocatedResources; @@ -4348,10 +4348,10 @@ struct _NDIS_MINIPORT_BLOCK { USHORT MediaSenseDisconnectCount; PNDIS_PACKET *xPackets; ULONG UserModeOpenReferences; - union { + _ANONYMOUS_UNION union { PVOID SavedSendHandler; PVOID SavedWanSendHandler; - }; + } DUMMYUNIONNAME2; PVOID SavedSendPacketsHandler; PVOID SavedCancelSendPacketsHandler; W_SEND_PACKETS_HANDLER WSendPacketsHandler; @@ -4412,10 +4412,10 @@ typedef struct _NDIS_COMMON_OPEN_BLOCK { PNDIS_STRING BindDeviceName; KSPIN_LOCK Reserved5; PNDIS_STRING RootDeviceName; - union { + _ANONYMOUS_UNION union { SEND_HANDLER SendHandler; WAN_SEND_HANDLER WanSendHandler; - }; + } DUMMYUNIONNAME; TRANSFER_DATA_HANDLER TransferDataHandler; SEND_COMPLETE_HANDLER SendCompleteHandler; TRANSFER_DATA_COMPLETE_HANDLER TransferDataCompleteHandler; diff --git a/winsup/w32api/include/ddk/ndiswan.h b/winsup/w32api/include/ddk/ndiswan.h index 51f3579ba..a3156d5a9 100644 --- a/winsup/w32api/include/ddk/ndiswan.h +++ b/winsup/w32api/include/ddk/ndiswan.h @@ -135,16 +135,16 @@ typedef struct _NDIS_WAN_COMPRESS_INFO { ULONG MSCompType; UCHAR CompType; USHORT CompLength; - union { + _ANONYMOUS_UNION union { struct { UCHAR CompOUI[3]; UCHAR CompSubType; UCHAR CompValues[32]; } Proprietary; struct { - UCHAR CompValues[32]; + UCHAR CompValues[32]; } Public; - }; + } DUMMYUNIONNAME; } NDIS_WAN_COMPRESS_INFO; typedef NDIS_WAN_COMPRESS_INFO *PNDIS_WAN_COMPRESS_INFO; diff --git a/winsup/w32api/include/ddk/ntapi.h b/winsup/w32api/include/ddk/ntapi.h index 6911109b1..4b94a7870 100644 --- a/winsup/w32api/include/ddk/ntapi.h +++ b/winsup/w32api/include/ddk/ntapi.h @@ -119,7 +119,7 @@ typedef enum _SYSTEM_INFORMATION_CLASS { SystemNotImplemented10 = 40, SystemDockInformation = 41, SystemNotImplemented11 = 41, - //SystemPowerInformation = 42, Conflicts with POWER_INFORMATION_LEVEL + /* SystemPowerInformation = 42, Conflicts with POWER_INFORMATION_LEVEL 1 */ SystemInvalidInfoClass2 = 42, SystemProcessorSpeedInformation = 43, SystemInvalidInfoClass3 = 43, @@ -773,7 +773,7 @@ typedef struct _OBJECT_BASIC_INFORMATION { LARGE_INTEGER CreateTime; } OBJECT_BASIC_INFORMATION, *POBJECT_BASIC_INFORMATION; #if 0 -// FIXME: Enable later +/* FIXME: Enable later */ typedef struct _OBJECT_TYPE_INFORMATION { UNICODE_STRING Name; ULONG ObjectCount; @@ -1449,7 +1449,7 @@ typedef struct _PROCESS_PRIORITY_CLASS { #define DRIVE_RAMDISK 6 typedef struct _PROCESS_DEVICEMAP_INFORMATION { - union { + _ANONYMOUS_UNION union { struct { HANDLE DirectoryHandle; } Set; @@ -1457,7 +1457,7 @@ typedef struct _PROCESS_DEVICEMAP_INFORMATION { ULONG DriveMap; UCHAR DriveType[32]; } Query; - }; + } DUMMYUNIONNAME; } PROCESS_DEVICEMAP_INFORMATION, *PPROCESS_DEVICEMAP_INFORMATION; typedef struct _PROCESS_SESSION_INFORMATION { diff --git a/winsup/w32api/include/ddk/ntddcdrm.h b/winsup/w32api/include/ddk/ntddcdrm.h index e4d830fbe..82bf815c2 100644 --- a/winsup/w32api/include/ddk/ntddcdrm.h +++ b/winsup/w32api/include/ddk/ntddcdrm.h @@ -220,10 +220,10 @@ typedef struct _CDROM_TOC_CD_TEXT_DATA_BLOCK { UCHAR CharacterPosition : 4; UCHAR BlockNumber : 3; UCHAR Unicode : 1; - union { + _ANONYMOUS_UNION union { UCHAR Text[12]; WCHAR WText[6]; - }; + } DUMMYUNIONNAME; UCHAR CRC[2]; } CDROM_TOC_CD_TEXT_DATA_BLOCK, *PCDROM_TOC_CD_TEXT_DATA_BLOCK; diff --git a/winsup/w32api/include/ddk/ntdddisk.h b/winsup/w32api/include/ddk/ntdddisk.h index 09b477fa9..205046928 100644 --- a/winsup/w32api/include/ddk/ntdddisk.h +++ b/winsup/w32api/include/ddk/ntdddisk.h @@ -252,12 +252,12 @@ typedef struct _DISK_EX_INT13_INFO { typedef struct _DISK_DETECTION_INFO { ULONG SizeOfDetectInfo; DETECTION_TYPE DetectionType; - union { - struct { + _ANONYMOUS_UNION union { + _ANONYMOUS_STRUCT struct { DISK_INT13_INFO Int13; DISK_EX_INT13_INFO ExInt13; - }; - }; + } DUMMYSTRUCTNAME; + } DUMMYUNIONNAME; } DISK_DETECTION_INFO, *PDISK_DETECTION_INFO; typedef struct _DISK_GEOMETRY { @@ -302,7 +302,7 @@ typedef struct _PARTITION_INFORMATION_GPT { typedef struct _DISK_PARTITION_INFO { ULONG SizeOfPartitionInfo; PARTITION_STYLE PartitionStyle; - union { + _ANONYMOUS_UNION union { struct { ULONG Signature; ULONG CheckSum; @@ -310,7 +310,7 @@ typedef struct _DISK_PARTITION_INFO { struct { GUID DiskId; } Gpt; - }; + } DUMMYUNIONNAME; } DISK_PARTITION_INFO, *PDISK_PARTITION_INFO; typedef struct _DISK_PERFORMANCE { @@ -334,10 +334,10 @@ typedef struct _PARTITION_INFORMATION_EX { LARGE_INTEGER PartitionLength; ULONG PartitionNumber; BOOLEAN RewritePartition; - union { + _ANONYMOUS_UNION union { PARTITION_INFORMATION_MBR Mbr; PARTITION_INFORMATION_GPT Gpt; - }; + } DUMMYUNIONNAME; } PARTITION_INFORMATION_EX, *PPARTITION_INFORMATION_EX; typedef struct _FORMAT_EX_PARAMETERS { @@ -378,10 +378,10 @@ typedef PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_GPT; typedef struct _SET_PARTITION_INFORMATION_EX { PARTITION_STYLE PartitionStyle; - union { + _ANONYMOUS_UNION union { SET_PARTITION_INFORMATION_MBR Mbr; SET_PARTITION_INFORMATION_GPT Gpt; - }; + } DUMMYUNIONNAME; } SET_PARTITION_INFORMATION_EX, *PSET_PARTITION_INFORMATION_EX; typedef struct _VERIFY_INFORMATION { @@ -403,7 +403,7 @@ typedef struct _DISK_CACHE_INFORMATION { DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority; USHORT DisablePrefetchTransferLength; BOOLEAN PrefetchScalar; - union { + _ANONYMOUS_UNION union { struct { USHORT Minimum; USHORT Maximum; @@ -413,7 +413,7 @@ typedef struct _DISK_CACHE_INFORMATION { USHORT Minimum; USHORT Maximum; } BlockPrefetch; - }; + } DUMMYUNIONNAME; } DISK_CACHE_INFORMATION, *PDISK_CACHE_INFORMATION; typedef struct _DISK_GROW_PARTITION { diff --git a/winsup/w32api/include/ddk/ntddmou.h b/winsup/w32api/include/ddk/ntddmou.h index 9d21773fb..457b9d96e 100644 --- a/winsup/w32api/include/ddk/ntddmou.h +++ b/winsup/w32api/include/ddk/ntddmou.h @@ -76,13 +76,13 @@ DEFINE_GUID(GUID_DEVINTERFACE_MOUSE, \ typedef struct _MOUSE_INPUT_DATA { USHORT UnitId; USHORT Flags; - union { + _ANONYMOUS_UNION union { ULONG Buttons; - struct { + _ANONYMOUS_STRUCT struct { USHORT ButtonFlags; USHORT ButtonData; - }; - }; + } DUMMYSTRUCTNAME; + } DUMMYUNIONNAME; ULONG RawButtons; LONG LastX; LONG LastY; diff --git a/winsup/w32api/include/ddk/ntifs.h b/winsup/w32api/include/ddk/ntifs.h index d47e34550..0c4dd2b09 100644 --- a/winsup/w32api/include/ddk/ntifs.h +++ b/winsup/w32api/include/ddk/ntifs.h @@ -701,30 +701,30 @@ typedef struct _DEVICE_MAP { #if (VER_PRODUCTBUILD >= 2600) typedef struct _EX_FAST_REF { - union { + _ANONYMOUS_UNION union { PVOID Object; ULONG RefCnt : 3; ULONG Value; - }; + } DUMMYUNIONNAME; } EX_FAST_REF, *PEX_FAST_REF; typedef struct _EX_PUSH_LOCK { - union { - struct { + _ANONYMOUS_UNION union { + _ANONYMOUS_STRUCT struct { ULONG Waiting : 1; ULONG Exclusive : 1; ULONG Shared : 30; - }; + } DUMMYSTRUCTNAME; ULONG Value; PVOID Ptr; - }; + } DUMMYUNIONNAME; } EX_PUSH_LOCK, *PEX_PUSH_LOCK; typedef struct _EX_RUNDOWN_REF { - union { + _ANONYMOUS_UNION union { ULONG Count; PVOID Ptr; - }; + } DUMMYUNIONNAME; } EX_RUNDOWN_REF, *PEX_RUNDOWN_REF; #endif @@ -1115,14 +1115,14 @@ typedef struct _FILE_NAMES_INFORMATION { typedef struct _FILE_OBJECTID_INFORMATION { LONGLONG FileReference; UCHAR ObjectId[16]; - union { + _ANONYMOUS_UNION union { struct { UCHAR BirthVolumeId[16]; UCHAR BirthObjectId[16]; UCHAR DomainId[16]; } ; UCHAR ExtendedInfo[48]; - }; + } DUMMYUNIONNAME; } FILE_OBJECTID_INFORMATION, *PFILE_OBJECTID_INFORMATION; typedef struct _FILE_OLE_CLASSID_INFORMATION { @@ -1440,11 +1440,11 @@ typedef struct _PRIVATE_CACHE_MAP_FLAGS { } PRIVATE_CACHE_MAP_FLAGS, *PPRIVATE_CACHE_MAP_FLAGS; typedef struct _PRIVATE_CACHE_MAP { - union { + _ANONYMOUS_UNION union { CSHORT NodeTypeCode; PRIVATE_CACHE_MAP_FLAGS Flags; ULONG UlongFlags; - }; + } DUMMYUNIONNAME; ULONG ReadAheadMask; PFILE_OBJECT FileObject; LARGE_INTEGER FileOffset1; @@ -4435,11 +4435,11 @@ NTSYSAPI NTSTATUS NTAPI ZwQueryObject ( - IN HANDLE ObjectHandle, - IN OBJECT_INFO_CLASS ObjectInformationClass, - OUT PVOID ObjectInformation, - IN ULONG Length, - OUT PULONG ResultLength + IN HANDLE ObjectHandle, + IN OBJECT_INFORMATION_CLASS ObjectInformationClass, + OUT PVOID ObjectInformation, + IN ULONG Length, + OUT PULONG ResultLength ); NTSYSAPI @@ -4564,10 +4564,10 @@ NTSYSAPI NTSTATUS NTAPI ZwSetInformationObject ( - IN HANDLE ObjectHandle, - IN OBJECT_INFO_CLASS ObjectInformationClass, - IN PVOID ObjectInformation, - IN ULONG ObjectInformationLength + IN HANDLE ObjectHandle, + IN OBJECT_INFORMATION_CLASS ObjectInformationClass, + IN PVOID ObjectInformation, + IN ULONG ObjectInformationLength ); NTSYSAPI diff --git a/winsup/w32api/include/ddk/scsi.h b/winsup/w32api/include/ddk/scsi.h index e1af711cb..727ba6c3e 100644 --- a/winsup/w32api/include/ddk/scsi.h +++ b/winsup/w32api/include/ddk/scsi.h @@ -247,13 +247,18 @@ typedef union _CDB { UCHAR Control; } PLAY_AUDIO_MSF, *PPLAY_AUDIO_MSF; +/* FIXME: Should the union be anonymous in C++ too? If so, + can't define named types _LBA and _MSF within anonymous union + for C++. */ struct _PLAY_CD { UCHAR OperationCode; UCHAR Reserved1 : 1; UCHAR CMSF : 1; UCHAR ExpectedSectorType : 3; UCHAR Lun : 3; - +#ifndef __cplusplus + _ANONYMOUS_UNION +#endif union { struct _LBA { UCHAR StartingBlockAddress[4]; @@ -270,10 +275,10 @@ typedef union _CDB { UCHAR EndingF; UCHAR Reserved2; } MSF; - #ifdef __cplusplus - } u; + #ifndef __cplusplus + }DUMMYUNIONNAME; #else - }; + }u; #endif UCHAR Audio : 1; @@ -902,14 +907,14 @@ typedef struct _INQUIRYDATA { UCHAR DeviceTypeQualifier : 3; UCHAR DeviceTypeModifier : 7; UCHAR RemovableMedia : 1; - union { + _ANONYMOUS_UNION union { UCHAR Versions; - struct { + _ANONYMOUS_STRUCT struct { UCHAR ANSIVersion : 3; UCHAR ECMAVersion : 3; UCHAR ISOVersion : 2; - }; - }; + } DUMMYSTRUCTNAME; + } DUMMYUNIONNAME; UCHAR ResponseDataFormat : 4; UCHAR HiSupport : 1; UCHAR NormACA : 1; @@ -1496,17 +1501,17 @@ typedef struct _MODE_INFO_EXCEPTIONS { UCHAR Reserved1 : 1; UCHAR PSBit : 1; UCHAR PageLength; - union { + _ANONYMOUS_UNION union { UCHAR Flags; - struct { + _ANONYMOUS_STRUCT struct { UCHAR LogErr : 1; UCHAR Reserved2 : 1; UCHAR Test : 1; UCHAR Dexcpt : 1; UCHAR Reserved3 : 3; UCHAR Perf : 1; - }; - }; + } DUMMYSTRUCTNAME; + } DUMMYUNIONNAME; UCHAR ReportMethod : 4; UCHAR Reserved4 : 4; UCHAR IntervalTimer[4]; @@ -1592,7 +1597,7 @@ typedef struct _TAPE_POSITION_DATA { /* This structure is used to convert little endian ULONGs to SCSI CDB big endians values. */ typedef union _EIGHT_BYTE { - struct { + _ANONYMOUS_STRUCT struct { UCHAR Byte0; UCHAR Byte1; UCHAR Byte2; @@ -1601,25 +1606,25 @@ typedef union _EIGHT_BYTE { UCHAR Byte5; UCHAR Byte6; UCHAR Byte7; - }; + } DUMMYSTRUCTNAME; ULONGLONG AsULongLong; } EIGHT_BYTE, *PEIGHT_BYTE; typedef union _FOUR_BYTE { - struct { + _ANONYMOUS_STRUCT struct { UCHAR Byte0; UCHAR Byte1; UCHAR Byte2; UCHAR Byte3; - }; + } DUMMYSTRUCTNAME; ULONG AsULong; } FOUR_BYTE, *PFOUR_BYTE; typedef union _TWO_BYTE { - struct { + _ANONYMOUS_STRUCT struct { UCHAR Byte0; UCHAR Byte1; - }; + } DUMMYSTRUCTNAME; USHORT AsUShort; } TWO_BYTE, *PTWO_BYTE; diff --git a/winsup/w32api/include/ddk/srb.h b/winsup/w32api/include/ddk/srb.h index a7fbafe50..74ba51a04 100644 --- a/winsup/w32api/include/ddk/srb.h +++ b/winsup/w32api/include/ddk/srb.h @@ -189,10 +189,10 @@ typedef struct _SCSI_REQUEST_BLOCK { struct _SCSI_REQUEST_BLOCK *NextSrb; PVOID OriginalRequest; PVOID SrbExtension; - union { + _ANONYMOUS_UNION union { ULONG InternalStatus; ULONG QueueSortKey; - }; + } DUMMYUNIONNAME; #if defined(_WIN64) ULONG Reserved; #endif @@ -280,6 +280,9 @@ typedef enum _SCSI_NOTIFICATION_TYPE { WMIReregister } SCSI_NOTIFICATION_TYPE, *PSCSI_NOTIFICATION_TYPE; +#ifdef __GNUC__ +__extension__ /* enums limited to range of integer */ +#endif typedef enum _SCSI_ADAPTER_CONTROL_TYPE { ScsiQuerySupportedControlTypes = 0, ScsiStopAdapter, diff --git a/winsup/w32api/include/ddk/tdikrnl.h b/winsup/w32api/include/ddk/tdikrnl.h index 12ae577d6..7e684702a 100644 --- a/winsup/w32api/include/ddk/tdikrnl.h +++ b/winsup/w32api/include/ddk/tdikrnl.h @@ -858,7 +858,7 @@ typedef enum _TDI_PNP_OPCODE { TDI_PNP_OP_NETREADY, TDI_PNP_OP_ADD_IGNORE_BINDING, TDI_PNP_OP_DELETE_IGNORE_BINDING, - TDI_PNP_OP_MAX, + TDI_PNP_OP_MAX } TDI_PNP_OPCODE; /* TDI_PNP_CONTEXT.ContextType */ @@ -920,33 +920,33 @@ typedef VOID DDKAPI IN NTSTATUS ProviderStatus); typedef struct _TDI20_CLIENT_INTERFACE_INFO { - union { - struct { + _ANONYMOUS_UNION union { + _ANONYMOUS_STRUCT struct { UCHAR MajorTdiVersion; UCHAR MinorTdiVersion; - }; + } DUMMYSTRUCTNAME; USHORT TdiVersion; - }; + } DUMMYUNIONNAME; USHORT Unused; PUNICODE_STRING ClientName; TDI_PNP_POWER_HANDLER PnPPowerHandler; - union { + _ANONYMOUS_UNION union { TDI_BINDING_HANDLER BindingHandler; - struct { + _ANONYMOUS_STRUCT struct { TDI_BIND_HANDLER BindHandler; TDI_UNBIND_HANDLER UnBindHandler; - }; - }; - union { - struct { + } DUMMYSTRUCTNAME; + }DUMMYUNIONNAME2; + _ANONYMOUS_UNION union { + _ANONYMOUS_STRUCT struct { TDI_ADD_ADDRESS_HANDLER_V2 AddAddressHandlerV2; TDI_DEL_ADDRESS_HANDLER_V2 DelAddressHandlerV2; - }; - struct { + } DUMMYSTRUCTNAME; + _ANONYMOUS_STRUCT struct { TDI_ADD_ADDRESS_HANDLER AddAddressHandler; TDI_DEL_ADDRESS_HANDLER DelAddressHandler; - }; - }; + } DUMMYSTRUCTNAME2; + } DUMMYUNIONNAME3; } TDI20_CLIENT_INTERFACE_INFO, *PTDI20_CLIENT_INTERFACE_INFO; typedef TDI20_CLIENT_INTERFACE_INFO TDI_CLIENT_INTERFACE_INFO; diff --git a/winsup/w32api/include/ddk/usb.h b/winsup/w32api/include/ddk/usb.h index 7e0145cb2..f3439352b 100644 --- a/winsup/w32api/include/ddk/usb.h +++ b/winsup/w32api/include/ddk/usb.h @@ -365,7 +365,7 @@ struct _URB_SET_FRAME_LENGTH { }; typedef struct _URB { - union { + _ANONYMOUS_UNION union { struct _URB_HEADER UrbHeader; struct _URB_SELECT_INTERFACE UrbSelectInterface; struct _URB_SELECT_CONFIGURATION UrbSelectConfiguration; @@ -383,7 +383,7 @@ typedef struct _URB { struct _URB_CONTROL_VENDOR_OR_CLASS_REQUEST UrbControlVendorClassRequest; struct _URB_CONTROL_GET_INTERFACE_REQUEST UrbControlGetInterfaceRequest; struct _URB_CONTROL_GET_CONFIGURATION_REQUEST UrbControlGetConfigurationRequest; - }; + } DUMMYUNIONNAME; } URB, *PURB; #define URB_FROM_IRP(Irp) ((IoGetCurrentIrpStackLocation(Irp))->Parameters.Others.Argument1) diff --git a/winsup/w32api/include/ddk/usbcamdi.h b/winsup/w32api/include/ddk/usbcamdi.h index 854752285..5d96435d8 100644 --- a/winsup/w32api/include/ddk/usbcamdi.h +++ b/winsup/w32api/include/ddk/usbcamdi.h @@ -77,7 +77,7 @@ typedef enum { USBCAMD_CamControlFlag_NoVideoRawProcessing = 1, USBCAMD_CamControlFlag_NoStillRawProcessing = 2, USBCAMD_CamControlFlag_AssociatedFormat = 4, - USBCAMD_CamControlFlag_EnableDeviceEvents = 8, + USBCAMD_CamControlFlag_EnableDeviceEvents = 8 } USBCAMD_CamControlFlags; typedef NTSTATUS DDKAPI diff --git a/winsup/w32api/include/ddk/video.h b/winsup/w32api/include/ddk/video.h index a614acd84..41e17127d 100644 --- a/winsup/w32api/include/ddk/video.h +++ b/winsup/w32api/include/ddk/video.h @@ -315,10 +315,10 @@ typedef VP_STATUS DDKAPI IN PVIDEO_POWER_MANAGEMENT VideoPowerControl); typedef struct _STATUS_BLOCK { - union { + _ANONYMOUS_UNION union { VP_STATUS Status; PVOID Pointer; - }; + } DUMMYUNIONNAME; ULONG_PTR Information; } STATUS_BLOCK, *PSTATUS_BLOCK; diff --git a/winsup/w32api/include/ddk/winddk.h b/winsup/w32api/include/ddk/winddk.h index d0b7b2088..eedc3abe6 100644 --- a/winsup/w32api/include/ddk/winddk.h +++ b/winsup/w32api/include/ddk/winddk.h @@ -88,10 +88,10 @@ struct _IO_STATUS_BLOCK; struct _DEVICE_DESCRIPTION; struct _SCATTER_GATHER_LIST; -DECLARE_INTERNAL_OBJECT(ADAPTER_OBJECT); -DECLARE_INTERNAL_OBJECT(DMA_ADAPTER); -DECLARE_INTERNAL_OBJECT(IO_STATUS_BLOCK); -DECLARE_INTERNAL_OBJECT(SECTION_OBJECT); +DECLARE_INTERNAL_OBJECT(ADAPTER_OBJECT) +DECLARE_INTERNAL_OBJECT(DMA_ADAPTER) +DECLARE_INTERNAL_OBJECT(IO_STATUS_BLOCK) +DECLARE_INTERNAL_OBJECT(SECTION_OBJECT) #if 1 /* FIXME: Unknown definitions */ @@ -110,7 +110,7 @@ typedef ULONG LOGICAL; #define TAG(_a, _b, _c, _d) (ULONG) \ (((_a) << 0) + ((_b) << 8) + ((_c) << 16) + ((_d) << 24)) -static inline struct _KPCR * KeGetCurrentKPCR( +static __inline struct _KPCR * KeGetCurrentKPCR( VOID) { ULONG Value; @@ -2517,14 +2517,14 @@ typedef struct _IO_STACK_LOCATION { ULONG Length; FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass; PFILE_OBJECT FileObject; - union { - struct { + _ANONYMOUS_UNION union { + _ANONYMOUS_STRUCT struct { BOOLEAN ReplaceIfExists; BOOLEAN AdvanceOnly; - }; + } DUMMYSTRUCTNAME; ULONG ClusterCount; HANDLE DeleteHandle; - }; + } DUMMYUNIONNAME; } SetFile; struct { ULONG Length; @@ -3019,15 +3019,15 @@ typedef VOID DDKAPI USHORT Depth; \ USHORT MaximumDepth; \ ULONG TotalAllocates; \ - union { \ + _ANONYMOUS_UNION union { \ ULONG AllocateMisses; \ ULONG AllocateHits; \ - }; \ + } DUMMYUNIONNAME; \ ULONG TotalFrees; \ - union { \ + _ANONYMOUS_UNION union { \ ULONG FreeMisses; \ ULONG FreeHits; \ - }; \ + } DUMMYUNIONNAME2; \ POOL_TYPE Type; \ ULONG Tag; \ ULONG Size; \ @@ -3035,23 +3035,23 @@ typedef VOID DDKAPI PFREE_FUNCTION Free; \ LIST_ENTRY ListEntry; \ ULONG LastTotalAllocates; \ - union { \ + _ANONYMOUS_UNION union { \ ULONG LastAllocateMisses; \ ULONG LastAllocateHits; \ - }; \ + } DUMMYUNIONNAME3; \ ULONG Future[2]; typedef struct _GENERAL_LOOKASIDE { - GENERAL_LOOKASIDE_S; + GENERAL_LOOKASIDE_S } GENERAL_LOOKASIDE, *PGENERAL_LOOKASIDE; typedef struct _NPAGED_LOOKASIDE_LIST { - GENERAL_LOOKASIDE_S; + GENERAL_LOOKASIDE_S KSPIN_LOCK Obsoleted; } NPAGED_LOOKASIDE_LIST, *PNPAGED_LOOKASIDE_LIST; typedef struct _PAGED_LOOKASIDE_LIST { - GENERAL_LOOKASIDE_S; + GENERAL_LOOKASIDE_S FAST_MUTEX Obsoleted; } PAGED_LOOKASIDE_LIST, *PPAGED_LOOKASIDE_LIST; @@ -3064,7 +3064,7 @@ typedef VOID DDKAPI (*PCALLBACK_FUNCTION)( typedef enum _EVENT_TYPE { NotificationEvent, - SynchronizationEvent, + SynchronizationEvent } EVENT_TYPE; typedef enum _KWAIT_REASON { @@ -4010,7 +4010,7 @@ RtlAssert( #define IsListEmpty(_ListHead) \ ((_ListHead)->Flink == (_ListHead)) -static inline PSINGLE_LIST_ENTRY +static __inline PSINGLE_LIST_ENTRY PopEntryList( IN PSINGLE_LIST_ENTRY ListHead) { @@ -4054,7 +4054,7 @@ PopEntryList( (_Entry)->Blink = NULL; \ } -static inline PLIST_ENTRY +static __inline PLIST_ENTRY RemoveHeadList( IN PLIST_ENTRY ListHead) { @@ -4077,7 +4077,7 @@ RemoveHeadList( return Entry; } -static inline PLIST_ENTRY +static __inline PLIST_ENTRY RemoveTailList( IN PLIST_ENTRY ListHead) { @@ -5009,7 +5009,7 @@ ExAcquireSharedWaitForExclusive( IN PERESOURCE Resource, IN BOOLEAN Wait); -static inline PVOID +static __inline PVOID ExAllocateFromNPagedLookasideList( IN PNPAGED_LOOKASIDE_LIST Lookaside) { @@ -5024,7 +5024,7 @@ ExAllocateFromNPagedLookasideList( return Entry; } -static inline PVOID +static __inline PVOID ExAllocateFromPagedLookasideList( IN PPAGED_LOOKASIDE_LIST Lookaside) { @@ -5142,7 +5142,7 @@ ExFreePoolWithTag( #define ExQueryDepthSList(ListHead) QueryDepthSList(ListHead) -static inline VOID +static __inline VOID ExFreeToNPagedLookasideList( IN PNPAGED_LOOKASIDE_LIST Lookaside, IN PVOID Entry) @@ -5157,7 +5157,7 @@ ExFreeToNPagedLookasideList( } } -static inline VOID +static __inline VOID ExFreeToPagedLookasideList( IN PPAGED_LOOKASIDE_LIST Lookaside, IN PVOID Entry) diff --git a/winsup/w32api/include/ddk/winnt4.h b/winsup/w32api/include/ddk/winnt4.h index bbe8daf5a..0c73231cb 100644 --- a/winsup/w32api/include/ddk/winnt4.h +++ b/winsup/w32api/include/ddk/winnt4.h @@ -45,7 +45,7 @@ typedef struct _ZONE_HEADER { ULONG TotalSegmentSize; } ZONE_HEADER, *PZONE_HEADER; -static inline PVOID +static __inline PVOID ExAllocateFromZone( IN PZONE_HEADER Zone) { @@ -62,7 +62,7 @@ ExExtendZone( IN PVOID Segment, IN ULONG SegmentSize); -static inline PVOID +static __inline PVOID ExFreeToZone( IN PZONE_HEADER Zone, IN PVOID Block)