Author: cwittich
Date: Tue Jan 6 11:52:24 2009
New Revision: 38609
URL:
http://svn.reactos.org/svn/reactos?rev=38609&view=rev
Log:
-Rob Shearman <robertshearman at gmail.com> Thu Sep 18 2008
widl: Don't automatically add DUMMYUNIONNAME and DUMMYSTRUCTNAME names to anonymous
unions and structs.
-Rob Shearman <robertshearman at gmail.com> Thu Sep 18 2008
include: Add explicit DUMMYUNIONNAME and DUMMYSTRUCTNAME names to anonymous unions in IDL
files.
Modified:
trunk/reactos/include/psdk/oaidl.idl
trunk/reactos/include/psdk/objidl.idl
trunk/reactos/include/psdk/propidl.idl
trunk/reactos/include/reactos/idl/svcctl.idl
trunk/reactos/tools/widl/header.c
Modified: trunk/reactos/include/psdk/oaidl.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/oaidl.idl?rev…
==============================================================================
--- trunk/reactos/include/psdk/oaidl.idl [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/oaidl.idl [iso-8859-1] Tue Jan 6 11:52:24 2009
@@ -286,7 +286,7 @@
[case(VT_DISPATCH|VT_BYREF)] IDispatch **ppdispVal;
[case(VT_ARRAY|VT_BYREF)] wireSAFEARRAY *pparray;
[case(VT_RECORD, VT_RECORD|VT_BYREF)] wireBRECORD brecVal;
- };
+ } DUMMYUNIONNAME;
};
/* Dispatch */
@@ -313,7 +313,7 @@
[case(VT_CARRAY)] struct tagARRAYDESC *lpadesc;
[case(VT_USERDEFINED)] HREFTYPE hreftype;
[default] ;
- };
+ } DUMMYUNIONNAME;
VARTYPE vt;
} TYPEDESC;
@@ -484,7 +484,7 @@
[switch_is(varkind)] union {
[case(VAR_PERINSTANCE, VAR_DISPATCH, VAR_STATIC)] ULONG oInst;
[case(VAR_CONST)] VARIANT *lpvarValue;
- };
+ } DUMMYUNIONNAME;
ELEMDESC elemdescVar;
WORD wVarFlags;
VARKIND varkind;
Modified: trunk/reactos/include/psdk/objidl.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/objidl.idl?re…
==============================================================================
--- trunk/reactos/include/psdk/objidl.idl [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/objidl.idl [iso-8859-1] Tue Jan 6 11:52:24 2009
@@ -1378,7 +1378,6 @@
[size_is(cbData)] byte data[];
} RemSTGMEDIUM;
- /* FIXME: C/C++ nameless union version */
typedef struct tagSTGMEDIUM {
DWORD tymed;
[switch_is(tymed)] union {
@@ -1390,7 +1389,7 @@
[case(TYMED_ISTREAM)] IStream *pstm;
[case(TYMED_ISTORAGE)] IStorage *pstg;
[default] ;
- };
+ } DUMMYUNIONNAME;
[unique] IUnknown *pUnkForRelease;
} uSTGMEDIUM;
@@ -1425,7 +1424,7 @@
case TYMED_FILE: LPOLESTR lpszFileName;
case TYMED_ISTREAM: BYTE_BLOB *pstm;
case TYMED_ISTORAGE: BYTE_BLOB *pstg;
- };
+ } DUMMYUNIONNAME;
IUnknown *pUnkForRelease;
} userSTGMEDIUM;
Modified: trunk/reactos/include/psdk/propidl.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/propidl.idl?r…
==============================================================================
--- trunk/reactos/include/psdk/propidl.idl [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/propidl.idl [iso-8859-1] Tue Jan 6 11:52:24 2009
@@ -201,7 +201,7 @@
[case(VT_BYREF|VT_DISPATCH)] IDispatch **ppdispVal;
[case(VT_BYREF|VT_ARRAY)] LPSAFEARRAY *pparray;
[case(VT_BYREF|VT_VARIANT)] PROPVARIANT *pvarVal;
- };
+ } DUMMYUNIONNAME;
};
typedef struct tagPROPVARIANT *LPPROPVARIANT;
@@ -255,7 +255,7 @@
[case(PRSPEC_PROPID)] PROPID propid;
[case(PRSPEC_LPWSTR)] LPOLESTR lpwstr;
[default] ;
- };
+ } DUMMYUNIONNAME;
} PROPSPEC;
typedef struct tagSTATPROPSTG {
Modified: trunk/reactos/include/reactos/idl/svcctl.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/idl/svcctl…
==============================================================================
--- trunk/reactos/include/reactos/idl/svcctl.idl [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/idl/svcctl.idl [iso-8859-1] Tue Jan 6 11:52:24 2009
@@ -188,7 +188,7 @@
[case(5)] LPSERVICE_SID_INFO pssid;
[case(6)] LPSERVICE_RPC_REQUIRED_PRIVILEGES_INFO psrp;
[case(7)] LPSERVICE_PRESHUTDOWN_INFO psps;
- };
+ } DUMMYUNIONNAME;
} SC_RPC_CONFIG_INFOA, *LPSC_RPC_CONFIG_INFOA;
typedef struct _SC_RPC_CONFIG_INFOW {
@@ -201,7 +201,7 @@
[case(5)] LPSERVICE_SID_INFO pssid;
[case(6)] LPSERVICE_RPC_REQUIRED_PRIVILEGES_INFO psrp;
[case(7)] LPSERVICE_PRESHUTDOWN_INFO psps;
- };
+ } DUMMYUNIONNAME;
} SC_RPC_CONFIG_INFOW, *LPSC_RPC_CONFIG_INFOW;
typedef struct _SERVICE_NOTIFY_STATUS_CHANGE_PARAMS_1 {
Modified: trunk/reactos/tools/widl/header.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/header.c?rev=38…
==============================================================================
--- trunk/reactos/tools/widl/header.c [iso-8859-1] (original)
+++ trunk/reactos/tools/widl/header.c [iso-8859-1] Tue Jan 6 11:52:24 2009
@@ -150,28 +150,8 @@
{
if (!v) return;
if (v->type) {
- const char *name = v->name;
- if (name == NULL) {
- switch (v->type->type) {
- case RPC_FC_STRUCT:
- case RPC_FC_CVSTRUCT:
- case RPC_FC_CPSTRUCT:
- case RPC_FC_CSTRUCT:
- case RPC_FC_PSTRUCT:
- case RPC_FC_BOGUS_STRUCT:
- case RPC_FC_ENCAPSULATED_UNION:
- name = "DUMMYSTRUCTNAME";
- break;
- case RPC_FC_NON_ENCAPSULATED_UNION:
- name = "DUMMYUNIONNAME";
- break;
- default:
- /* ? */
- break;
- }
- }
indent(h, 0);
- write_type_def_or_decl(h, v->type, TRUE, "%s", name);
+ write_type_def_or_decl(h, v->type, TRUE, "%s", v->name);
fprintf(h, ";\n");
}
}