reactos/reactos/tools/widl/widl_ros.diff

127 lines
3.9 KiB
Diff
Raw Normal View History

diff -u wine-1.3.4/tools/widl/hash.c tools/widl/hash.c
--- wine-1.3.4/tools/widl/hash.c 2010-09-19 17:48:47.640625000 +0200
+++ tools/widl/hash.c 2010-09-19 19:17:19.000000000 +0200
@@ -21,9 +21,7 @@
#include <stdio.h>
#include <stdarg.h>
-#include "windef.h"
-#include "winbase.h"
-#include "winnls.h"
+#include <host/nls.h>
#include "widltypes.h"
#include "hash.h"
diff -u wine-1.3.4/tools/widl/header.c tools/widl/header.c
--- wine-1.3.4/tools/widl/header.c 2010-09-19 17:48:47.640625000 +0200
+++ tools/widl/header.c 2010-10-26 18:30:19.000000000 +0200
@@ -1081,15 +1081,7 @@
{
unsigned int ver = get_attrv(iface->attrs, ATTR_VERSION);
const char *var = get_attrp(iface->attrs, ATTR_IMPLICIT_HANDLE);
- static int allocate_written = 0;
- if (!allocate_written)
- {
- allocate_written = 1;
- fprintf(header, "void * __RPC_USER MIDL_user_allocate(SIZE_T);\n");
- fprintf(header, "void __RPC_USER MIDL_user_free(void *);\n\n");
- }
-
fprintf(header, "/*****************************************************************************\n");
fprintf(header, " * %s interface (v%d.%d)\n", iface->name, MAJORVERSION(ver), MINORVERSION(ver));
fprintf(header, " */\n");
diff -u wine-1.3.4/tools/widl/parser.y tools/widl/parser.y
--- wine-1.3.4/tools/widl/parser.y 2010-09-19 17:49:40.578125000 +0200
+++ tools/widl/parser.y 2010-10-03 16:44:18.781250000 +0200
@@ -1816,6 +1816,12 @@
else if (is_attr(attrs, ATTR_UUID) && !is_attr(attrs, ATTR_PUBLIC))
attrs = append_attr( attrs, make_attr(ATTR_PUBLIC) );
+ /* Append the SWITCHTYPE attribute to a union if it does not already have one. */
+ if (type_get_type_detect_alias(type) == TYPE_UNION &&
+ is_attr(attrs, ATTR_SWITCHTYPE) &&
+ !is_attr(type->attrs, ATTR_SWITCHTYPE))
+ type->attrs = append_attr(type->attrs, make_attrp(ATTR_SWITCHTYPE, get_attrp(attrs, ATTR_SWITCHTYPE)));
Sync to wine-0.9.60: - Rob Shearman <rob@codeweavers.com> Wed, 26 Mar 2008 widl: Support using context handles as the binding handle in client functions. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Use is_string_type for detecting strings in write_typeformatstring_var to make it consistent with write_remoting_arg. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Add support for generic binding handles. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Fix detection of non-pointer context handles. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Make sure that string types are always written out by write_string_tfs and not write_simple_pointer. - Rob Shearman <rob@codeweavers.com> Mon, 31 Mar 2008 widl: Parse typedefs of function pointers. - Rob Shearman <rob@codeweavers.com> Tue, 1 Apr 2008 widl: Be more strict about where semicolons can appear in IDL files. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Add a function to get the return type of a parsed function. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Store function and function pointer types completely within type_t type. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Support parsing calling conventions for function identifiers. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Support __fastcall and __pascal calling conventions. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Add a newline between function prototypes for non-object interfaces. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Fix the writing out of function pointers with more than one level of indirection. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Turn on verbose errors, which gives a little more information in the case of a syntax error. - Dan Hipschman <dsh@linux.ucla.edu> Thu, 3 Apr 2008 widl: Fix a mistake in an ordered list (keywords). svn path=/trunk/; revision=36829
2008-10-19 12:30:41 +00:00
+
LIST_FOR_EACH_ENTRY( decl, decls, const declarator_t, entry )
{
Sync to wine-0.9.60: - Rob Shearman <rob@codeweavers.com> Wed, 26 Mar 2008 widl: Support using context handles as the binding handle in client functions. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Use is_string_type for detecting strings in write_typeformatstring_var to make it consistent with write_remoting_arg. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Add support for generic binding handles. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Fix detection of non-pointer context handles. - Rob Shearman <rob@codeweavers.com> Thu, 27 Mar 2008 widl: Make sure that string types are always written out by write_string_tfs and not write_simple_pointer. - Rob Shearman <rob@codeweavers.com> Mon, 31 Mar 2008 widl: Parse typedefs of function pointers. - Rob Shearman <rob@codeweavers.com> Tue, 1 Apr 2008 widl: Be more strict about where semicolons can appear in IDL files. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Add a function to get the return type of a parsed function. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Store function and function pointer types completely within type_t type. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Support parsing calling conventions for function identifiers. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Support __fastcall and __pascal calling conventions. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Add a newline between function prototypes for non-object interfaces. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Fix the writing out of function pointers with more than one level of indirection. - Rob Shearman <rob@codeweavers.com> Wed, 2 Apr 2008 widl: Turn on verbose errors, which gives a little more information in the case of a syntax error. - Dan Hipschman <dsh@linux.ucla.edu> Thu, 3 Apr 2008 widl: Fix a mistake in an ordered list (keywords). svn path=/trunk/; revision=36829
2008-10-19 12:30:41 +00:00
diff -u wine-1.3.4/tools/widl/typelib.c tools/widl/typelib.c
--- wine-1.3.4/tools/widl/typelib.c 2010-09-19 17:50:24.000000000 +0200
+++ tools/widl/typelib.c 2010-09-26 20:23:47.000000000 +0200
@@ -35,8 +35,7 @@
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
-#include "windef.h"
-#include "winbase.h"
+#include <host/typedefs.h>
#include "widl.h"
#include "utils.h"
diff -u wine-1.3.4/tools/widl/typelib_struct.h tools/widl/typelib_struct.h
--- wine-1.3.4/tools/widl/typelib_struct.h 2010-09-19 17:50:40.953125000 +0200
+++ tools/widl/typelib_struct.h 2010-10-10 00:50:32.921875000 +0200
@@ -302,7 +302,7 @@
*
*/
-#include "pshpack1.h"
+#include <host/pshpack1.h>
typedef struct {
/*00*/ DWORD SLTG_magic; /* 0x47544c53 == "SLTG" */
@@ -599,7 +599,7 @@
WORD typeofarray
*/
-#include "poppack.h"
+#include <host/poppack.h>
/*---------------------------END--------------------------------------------*/
#endif
diff -u wine-1.3.4/tools/widl/widltypes.h tools/widl/widltypes.h
--- wine-1.3.4/tools/widl/widltypes.h 2010-09-19 17:51:38.890625000 +0200
+++ tools/widl/widltypes.h 2010-09-19 19:17:19.656250000 +0200
@@ -21,6 +21,13 @@
#ifndef __WIDL_WIDLTYPES_H
#define __WIDL_WIDLTYPES_H
+#define S_OK 0
+#define S_FALSE 1
+#define E_OUTOFMEMORY ((HRESULT)0x8007000EL)
+#define TYPE_E_IOERROR ((HRESULT)0x80028CA2L)
+
+#define max(a, b) ((a) > (b) ? a : b)
+
#include <stdarg.h>
#include <assert.h>
#include "guiddef.h"
@@ -32,7 +39,9 @@
typedef GUID UUID;
#endif
+#ifndef TRUE
#define TRUE 1
+#endif
#define FALSE 0
typedef struct _loc_info_t loc_info_t;
diff -u wine-1.3.4/tools/widl/write_msft.c tools/widl/write_msft.c
--- wine-1.3.4/tools/widl/write_msft.c 2010-09-19 17:51:48.531250000 +0200
+++ tools/widl/write_msft.c 2010-09-26 20:23:47.000000000 +0200
@@ -40,10 +40,8 @@
#define NONAMELESSUNION
#define NONAMELESSSTRUCT
-#include "winerror.h"
-#include "windef.h"
-#include "winbase.h"
-#include "winnls.h"
+#include <host/typedefs.h>
+#include <host/nls.h>
#include "widl.h"
#include "typelib.h"