2010-10-12 20:51:07 +00:00
|
|
|
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
|
2008-01-15 21:54:49 +00:00
|
|
|
@@ -21,9 +21,7 @@
|
2008-01-11 16:32:28 +00:00
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdarg.h>
|
|
|
|
|
|
|
|
-#include "windef.h"
|
|
|
|
-#include "winbase.h"
|
|
|
|
-#include "winnls.h"
|
|
|
|
+#include <host/nls.h>
|
|
|
|
|
2010-10-12 20:51:07 +00:00
|
|
|
#include "widltypes.h"
|
2008-01-11 16:32:28 +00:00
|
|
|
#include "hash.h"
|
2011-05-13 19:13:53 +00:00
|
|
|
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");
|
2010-10-12 20:51:07 +00:00
|
|
|
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
|
|
|
+
|
2010-10-12 20:51:07 +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
|
|
|
|
2010-10-12 20:51:07 +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
|
2008-01-15 21:54:49 +00:00
|
|
|
@@ -35,8 +35,7 @@
|
2008-01-11 16:32:28 +00:00
|
|
|
#define NONAMELESSUNION
|
|
|
|
#define NONAMELESSSTRUCT
|
|
|
|
|
|
|
|
-#include "windef.h"
|
|
|
|
-#include "winbase.h"
|
|
|
|
+#include <host/typedefs.h>
|
|
|
|
|
|
|
|
#include "widl.h"
|
|
|
|
#include "utils.h"
|
2010-10-12 20:51:07 +00:00
|
|
|
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
|
2010-10-09 22:54:37 +00:00
|
|
|
@@ -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
|
2010-10-12 20:51:07 +00:00
|
|
|
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
|
2008-01-15 21:54:49 +00:00
|
|
|
@@ -21,6 +21,13 @@
|
2008-01-11 16:32:28 +00:00
|
|
|
#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>
|
2010-10-12 20:51:07 +00:00
|
|
|
#include <assert.h>
|
2008-01-11 16:32:28 +00:00
|
|
|
#include "guiddef.h"
|
2010-10-12 20:51:07 +00:00
|
|
|
@@ -32,7 +39,9 @@
|
2008-09-21 19:57:05 +00:00
|
|
|
typedef GUID UUID;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
+#ifndef TRUE
|
|
|
|
#define TRUE 1
|
|
|
|
+#endif
|
|
|
|
#define FALSE 0
|
|
|
|
|
2010-10-12 20:51:07 +00:00
|
|
|
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
|
2008-01-15 21:54:49 +00:00
|
|
|
@@ -40,10 +40,8 @@
|
2008-01-11 16:32:28 +00:00
|
|
|
#define NONAMELESSUNION
|
|
|
|
#define NONAMELESSSTRUCT
|
|
|
|
|
|
|
|
-#include "winerror.h"
|
|
|
|
-#include "windef.h"
|
|
|
|
-#include "winbase.h"
|
|
|
|
-#include "winnls.h"
|
|
|
|
+#include <host/typedefs.h>
|
|
|
|
+#include <host/nls.h>
|
|
|
|
|
2010-10-12 20:51:07 +00:00
|
|
|
#include "widl.h"
|
2008-01-11 16:32:28 +00:00
|
|
|
#include "typelib.h"
|