Commit Graph

1195 Commits

Author SHA1 Message Date
Francois Gouget 8a63982f73 widl: Remove unneeded NONAMELESSXXX directives. 2015-04-03 11:22:06 +09:00
André Hentschel 900e7c5d65 widl: Fix compiler warnings with flag -Wunused-macros. 2014-12-10 13:31:01 +01:00
Nikolay Sivov c27af4774e widl: Generate method macros/wrappers for overridden methods. 2014-10-14 14:15:30 +09:00
Henri Verbeet fabfa59aea widl: Handle aggregate returns in a MSVC compatible way.
Aggregates are returned through an implicit parameter after the this/interface
pointer. Note that this follows the C++ convention, affected methods are not
callable from C with the Microsoft headers.
2014-09-08 11:34:05 +02:00
Dmitry Timoshkov 1b6b04e3a8 widl: Correct the condition when to use new code path which avoids writing negative offsets in the pointer description. 2014-04-03 11:11:01 +02:00
Dmitry Timoshkov a333c6584d widl: Add support for an array of strings to write_string_tfs. 2014-04-02 15:46:49 +02:00
Dmitry Timoshkov 1dbcdee326 widl: Don't call write_embedded_types if an array element is a string. 2014-04-02 15:46:47 +02:00
Dmitry Timoshkov bde38bebe9 widl: Avoid generating negative offsets for conformant arrays of strings. 2014-04-02 15:46:45 +02:00
Dmitry Timoshkov 1845d10c3e widl: Pass type attributes from write_array_tfs to write_array_element_type.
This allows to differentiate strings and write appropriate rpc type
(FC_C_C[W]STRING instead of FC_[W]CHAR).
2014-04-02 15:46:43 +02:00
Dmitry Timoshkov eb54b5b4df widl: Pass type attributes from write_array_tfs to write_pointer_description.
This allows to differentiate strings and write appropriate rpc type
(FC_C_C[W]STRING instead of FC_[W]CHAR).
2014-04-02 15:46:41 +02:00
Dmitry Timoshkov e6d585a6b2 widl: Move is_void(), is_declptr() and is_conformant_array() to header.h and make them inline. 2014-03-20 10:44:32 +01:00
Dmitry Timoshkov ae843427ed widl: Unify indentation of comments. 2014-03-19 11:36:33 +01:00
Dmitry Timoshkov e809f0bd8c widl: Move is_ptr() and is_array() to header.h and make them inline. 2014-03-19 11:36:12 +01:00
Nikolay Sivov ea9e7b6318 widl: Fix default value types. 2014-03-18 11:40:08 +01:00
Nikolay Sivov 826980d7f4 widl: Fix duplicate typeinfo being written to typelib for enums. 2014-03-11 10:28:46 +01:00
Alexandre Julliard a2683dca64 widl: Ignore unknown -m target options. 2014-02-12 19:15:22 +01:00
Nikolay Sivov cbf55d8251 widl: Uuid attribute is allowed for 'struct'. 2014-01-28 10:52:09 +01:00
Nikolay Sivov c46debeeeb widl: Fix pointer size for SYS_WIN64 typelibs.
The fact that test data was wrong was hidden by broken widl typelib,
and same test typelib was used on windows so we never get proper test
results. Standard IUnknown/IDispatch that live in system stdole2.tlb
are also tested now.
2014-01-27 14:13:54 +01:00
Alexandre Julliard 509364e1dd makefiles: Get rid of Make.rules. 2014-01-14 12:18:02 +01:00
Jacek Caban 0df819eecf widl: Make identifiers file more compatible with midl. 2014-01-09 12:28:43 +01:00
Alexandre Julliard 0d533cf0bd makefiles: Allow define arguments to be specific to a single file. 2014-01-07 12:20:25 +01:00
Alexandre Julliard ce25c89585 makedep: Don't expand variable references that use ${}. 2014-01-04 20:33:57 +01:00
Alexandre Julliard 092f37fc2d makefiles: Include program files in the all: target. 2013-12-31 19:07:49 +01:00
Alexandre Julliard 1047e0474d makefiles: Leave it to install-sh to create destination directories. 2013-12-26 14:35:15 +01:00
Alexandre Julliard 9e307f268e widl: Determine the output type from the file name if not specified explicitly. 2013-12-26 13:35:45 +01:00
Frédéric Delanoy 120dac41a1 widl: Constify a character string. 2013-12-20 10:51:17 +01:00
Alexandre Julliard e2df0ab856 makefiles: Generate rules from makedep for building and installing man pages. 2013-11-18 11:40:00 +01:00
Jacek Caban 318931bd46 widl: Include resource id in typelib path if not default. 2013-11-12 19:06:42 +01:00
Alexandre Julliard cc02e15220 widl: Add support for #pragma directives. 2013-11-04 17:41:11 +01:00
Alexandre Julliard 8d5b8b1346 makefiles: Define __WINESRC__ globally. 2013-10-07 10:48:04 +02:00
Jacek Caban 7e4462e28e widl: Generate names for imported nameless typedefs. 2013-08-29 19:56:18 +02:00
Jacek Caban 2510ec477b widl: Increase version number stored in custom data. 2013-08-29 19:56:18 +02:00
Jacek Caban 0277512350 widl: Include string info in tlb custom data. 2013-08-29 19:56:18 +02:00
Kai Tietz f05853b28a widl: Add async_uuid attribute base support in parser. 2013-08-19 12:53:19 +02:00
Kai Tietz da282872ff widl: Allow version-attribute on type and enum. 2013-08-19 12:53:18 +02:00
Kai Tietz f58353ecb6 widl: Allow inputsync-attribute on functions. 2013-08-19 12:53:17 +02:00
Kai Tietz 94c94260ea widl: Allow hidden-attribute on type. 2013-08-19 12:53:16 +02:00
Kai Tietz 0d4f6bf258 widl: Allow hexadecimal argument for version-attribute. 2013-08-19 12:53:15 +02:00
Kai Tietz 60beb40cb7 widl: Handle default value for public vs hidden attribute. 2013-08-19 12:53:14 +02:00
Kai Tietz d8318121a2 widl: Allow attributes before and after typedef-keyword. 2013-08-19 12:53:13 +02:00
Kai Tietz 499f05433a widl: Add RT's namespace keyword to scanner, and parser. 2013-08-19 12:53:12 +02:00
Kai Tietz 5ff7af708d widl: New option --rt for enabling rt's specific language extensions. 2013-08-19 11:30:30 +02:00
Alexandre Julliard bda5a2ffb8 widl: Remove non-bison compatibility code. 2013-08-01 12:04:24 +02:00
Piotr Caban e35a05b9a4 oleaut32: Name guids hash table segment in MSFT_SegDir struct. 2013-07-31 22:26:56 +02:00
Piotr Caban f9e73f97a9 oleaut32: Name names hash table segment in MSFT_SegDir struct. 2013-07-29 15:00:59 +02:00
Alexandre Julliard a93ee68f2e widl: Fix typo in man page. 2013-07-19 11:53:17 +02:00
Frédéric Delanoy 267422101a widl: Fix manpage formatting. 2013-07-17 20:30:50 +02:00
Alexandre Julliard dcc97a186d Standardize the BUGS, AVAILABILITY and SEE ALSO sections across all man pages. 2013-07-16 20:48:05 +02:00
Alexandre Julliard 005565d90d makefiles: Make sure to install manpages for the install-lib and install-dev cases. 2013-07-02 19:39:30 +02:00
Alexandre Julliard 28ece74fd8 Use the official Microsoft definitions for Gaelic languages. 2013-06-19 20:09:51 +02:00
Alexandre Julliard 7ca08fee55 widl: Avoid short printf formats with int variables. 2013-06-17 13:34:40 +02:00
André Hentschel 478401dce7 widl: Remove SPARC and Alpha support. 2013-03-11 10:50:06 +01:00
Jacek Caban ed50ce5efe widl: Allow shadowing imported types with typedef. 2013-02-26 18:18:31 +01:00
Piotr Caban 3d9454bc8f widl: Make it possible to set typelib resource id with id attribute. 2013-01-18 13:29:09 +01:00
André Hentschel 3ea316638d widl: Add ARM64 support. 2013-01-16 12:37:44 +01:00
Austin English ecfb6539f6 widl: add_interface_typeinfo should not return a value. 2012-12-20 12:01:08 +01:00
Austin English 554a2ccb11 widl: write_array_element_type shouldn't return a value. 2012-12-20 12:01:02 +01:00
Alexandre Julliard 50835b4151 widl: Fix a typo in the man page. 2012-12-10 11:27:33 +01:00
Alexandre Julliard 756d33ddae widl: Print large enum constants in hex. 2012-11-23 18:06:07 +01:00
Jacek Caban 4d323d176c widl: Ignore -app_config option. 2012-11-07 13:55:48 +01:00
Jacek Caban 218b1951db widl: Define PROXY_DELEGATION in dlldata.c when needed. 2012-11-01 15:42:33 +01:00
Thomas Faber 52607ba66b widl: Use 'class' for coclass typedefs in C++. 2012-10-15 13:31:08 +02:00
Jacek Caban 430c3d0be2 widl: Fixed fwrite error handling. 2012-10-08 12:54:56 +02:00
Jacek Caban da0f33370a widl: Alloc big enough buffer in dup_basename to handle registration suffix. 2012-10-08 12:54:55 +02:00
Jacek Caban 5cb75c525f widl: Fail with error on an attempt to inherit interface from itself. 2012-08-29 11:46:24 +02:00
Michael Stefaniuc 2c97f3fcb5 widl: Avoid FALSE:TRUE conditional expressions. 2012-08-15 12:15:13 +02:00
Nikolay Sivov 65f4184936 widl: Don't output method macro if name duplicates another method name. 2012-07-30 17:57:49 +02:00
Nikolay Sivov 0bc5e7a62a widl: Protect from duplicated method names in C-style vtable struct. 2012-07-30 17:57:49 +02:00
Nikolay Sivov d54e9603b5 widl: Emit default argument values for cpp methods. 2012-07-26 13:40:44 +02:00
Jacek Caban 6b34eea6fc widl: Added an extension that uses inline functions instead of macros for C interface calls. 2012-07-26 12:17:25 +02:00
Jacek Caban 80d3055869 widl: Add IDL installation directory to include path. 2012-07-23 12:55:02 +02:00
Jacek Caban 42e77c849f widl: Added --help command line option. 2012-06-08 19:35:16 +02:00
Jacek Caban 76693d52c7 widl: Added support for nameless structs and unions. 2012-05-14 10:29:40 +02:00
Jacek Caban 718adc91fc widl: Make headers guards compatible with midl. 2012-03-08 19:22:45 +01:00
Jacek Caban af2eba24b7 widl: Removed unused idfile_token. 2012-03-08 18:56:13 +01:00
Alexandre Julliard 42e583f1f6 widl: We no longer need to avoid windows.h in generated headers. 2012-01-20 15:59:02 +01:00
Alexandre Julliard bf0c37d56a widl: Zero-initialize [out] structures and unions that contain pointers. 2011-12-13 18:59:15 +01:00
Andrew Talbot 7f27eb6a45 widl: Avoid right-shift of negative values. 2011-11-23 09:13:04 +01:00
Jacek Caban c7602d51b3 widl: Define __REQUIRED_RPCNDR_H_VERSION__ in generated headers. 2011-09-22 19:51:49 +02:00
Alexandre Julliard 977e15b762 widl: Store the type format offset for function parameters in the variable object. 2011-09-19 12:56:25 +02:00
Alexandre Julliard e2a92702ed widl: Pass variables around instead of types for function parameters. 2011-09-19 11:54:42 +02:00
Alexandre Julliard c31948a775 widl: Make the function return value a variable. 2011-09-17 16:09:47 +02:00
Alexandre Julliard 05ff9dfeb1 widl: Include string formats in the element description for complex arrays. 2011-09-16 21:08:54 +02:00
Bernhard Loos 00ab883644 widl: Also create proxies/stubs for interfaces marked with oleautomation. 2011-09-06 15:42:28 +02:00
Alexandre Julliard 8e15db40a8 widl: Don't output stubs for interfaces included in a typelib. 2011-09-06 15:42:16 +02:00
Alexandre Julliard 4ff0faa67c widl: Generate a registration script along with the typelib when creating a resource file. 2011-08-02 20:47:48 +02:00
Alexandre Julliard b568287eef widl: Add support for generating typelibs directly in resource format. 2011-08-01 21:38:56 +02:00
Alexandre Julliard 36e73eb3fb widl: Add helper functions for outputting resource files. 2011-08-01 21:38:14 +02:00
Alexandre Julliard 0359b30b1b widl: Only register interfaces when the factory buffer is known. 2011-08-01 17:20:46 +02:00
Alexandre Julliard ca22457d7b widl: Don't set base types to 0 on proxy entry. 2011-07-27 16:16:14 +02:00
Alexandre Julliard 0d76bb7ec3 widl: Clear out more types of parameters in the proxy error handlers. 2011-07-27 16:04:24 +02:00
Alexandre Julliard 82f33d3f6b widl: Check for mismatched types in ?: expressions. 2011-07-25 10:43:09 +02:00
Jacek Caban 2b7c6a9599 widl: Produce __uuidof-compatible headers. 2011-07-14 21:51:36 +02:00
Alexandre Julliard 9df500d45d widl: Support LANG_NEUTRAL as a valid lcid in typelibs. 2011-07-08 17:34:41 +02:00
Jacek Caban f8c517978b widl: Use proper calling convention attributes. 2011-07-07 17:32:12 +02:00
Marcus Meissner 28e92027b1 widl: Decrease is_object_interface after usage. 2011-07-06 17:01:32 +02:00
Jacek Caban 9afec542e0 widl: Generate class forward declaration for coclasses. 2011-07-06 16:58:49 +02:00
Jacek Caban 63d5462ced widl: Insert standard windows.h and ole2.h includes to generated headers. 2011-06-27 13:30:57 -05:00
Alexandre Julliard 809810eb28 widl: Use NdrPointerFree instead of freeing by hand where possible. 2011-06-20 19:32:04 +02:00
Alexandre Julliard c173399d62 widl: Move the pointer check functionality to typegen.c. 2011-06-14 12:55:39 +02:00
Alexandre Julliard fa2b886d1d widl: Also check array pointers for null ref pointers. 2011-06-14 12:55:22 +02:00
Alexandre Julliard c70ef62958 widl: Make output unique pointers into object pointers in object interfaces. 2011-06-14 12:24:00 +02:00
Alexandre Julliard bcca410733 widl: Allow unsized in,out string parameters. 2011-06-14 12:23:32 +02:00
Alexandre Julliard 351c6ca5e4 widl: If possible, use the interface name as prefix for the expr eval functions. 2011-06-13 23:59:04 +02:00
Alexandre Julliard 7a0ce4c864 widl: Include the parent interfaces in the proxy thunk table too. 2011-06-13 23:16:36 +02:00
Alexandre Julliard 5881069601 widl: Use delegation when inheriting from a local interface. 2011-06-13 22:16:05 +02:00
Alexandre Julliard 799000ea3a widl: Include the parent interfaces in the proc format string offsets for proxies. 2011-06-13 21:58:33 +02:00
Alexandre Julliard 0cba5b06f5 widl: Use the local function as proxy entry for callas interpreted functions. 2011-06-13 21:17:52 +02:00
Alexandre Julliard e620869d5f widl: Output the list of rundown routines in server files. 2011-06-13 20:31:42 +02:00
Alexandre Julliard 717f2bebd8 widl: Use the context handle description instead of the pointer for arguments that are pointer to handles. 2011-06-13 20:09:47 +02:00
Alexandre Julliard 717bd66440 widl: Default to the cdecl calling convention in client/server functions. 2011-06-13 11:53:28 +02:00
Alexandre Julliard 49c31e3bf8 makefiles: Use the generic install flags for the tools directories. 2011-06-12 12:47:48 +02:00
Alexandre Julliard 3a709fa5bb widl: Fix a typo in updating the type format offset for strings. 2011-06-09 13:18:58 +02:00
Alexandre Julliard 211ed7be48 widl: Fix packing of parameter structures for arguments larger than a pointer. 2011-06-09 12:08:48 +02:00
Alexandre Julliard 59171bd9f5 widl: Pass a structure containing the parameters to NdrClientCall instead of accessing the stack. 2011-06-09 12:08:48 +02:00
Alexandre Julliard 9f99d74a20 widl: Add a helper function for generating a stub that uses NdrClientCall. 2011-06-09 12:08:48 +02:00
Alexandre Julliard 350c93a164 widl: Don't require inline stubs for functions that are never generated. 2011-06-08 14:12:16 +02:00
Alexandre Julliard 3147545541 widl: Don't allow floating point parameters for interpreted functions. 2011-06-08 14:06:22 +02:00
Alexandre Julliard 36ee028f49 widl: Don't generate old-style interpreted stubs on 64-bit. 2011-06-08 12:14:47 +02:00
Alexandre Julliard e4a0483529 widl: Set a correct fpu parameter mask on 64-bit. 2011-06-08 11:51:27 +02:00
Alexandre Julliard d9cd0d8cac widl: In 64-bit mode, pass all arguments to NdrClientCall instead of a pointer to the first one. 2011-06-08 11:34:46 +02:00
Jacek Caban 674ab49fa2 widl: Don't duplicate optarg and optind declarations in sources. 2011-06-07 14:18:34 +02:00
Alexandre Julliard 609602cb38 widl: Add support for generating new-style interpreted stubs for proxies. 2011-06-07 14:18:15 +02:00
Alexandre Julliard 01b44d1317 widl: Generate thunks for callas functions using interpreted stubs. 2011-06-07 12:11:50 +02:00
Alexandre Julliard 39b15066b0 widl: Add support for generating new-style interpreted stubs for servers. 2011-06-06 21:49:22 +02:00
Alexandre Julliard e95d5a8e3c widl: Add support for generating new-style interpreted stubs for clients. 2011-06-06 21:49:22 +02:00
Alexandre Julliard b724138bd9 widl: Add support for new-style interpreted stubs in the proc format strings. 2011-06-06 21:49:22 +02:00
Alexandre Julliard e644c2cd03 widl: Add support for generating old-style interpreted stubs for servers. 2011-06-03 12:27:54 +02:00
Alexandre Julliard 9c4d01f329 widl: Add support for generating old-style interpreted stubs for clients. 2011-06-03 12:27:14 +02:00
Alexandre Julliard 33ba9731a3 widl: Add support for generating old-style interpreted stubs for proxies. 2011-06-03 12:27:00 +02:00
Alexandre Julliard 4fe88648cb widl: Always use signed types in parameter formats.
Native marshaller doesn't support the unsigned ones.
2011-06-03 12:26:31 +02:00
Alexandre Julliard 9128dea410 widl: Use the pointer offset for arrays declared as pointer in the proc format strings of interpreted functions. 2011-06-02 16:22:43 +02:00
Alexandre Julliard 11416a20c9 widl: Generate function headers in the proc format string for interpreted functions. 2011-06-02 16:22:43 +02:00
Alexandre Julliard 6ae510050b widl: Add a -O option to specify stub style. 2011-06-02 16:22:42 +02:00
Alexandre Julliard 2db27725bf widl: Don't allow unions passed by value or floating point returns for interpreted functions. 2011-06-02 16:21:52 +02:00
Alexandre Julliard 82d3ea86cf widl: Always update the type format offset in write_type_tfs and not in callers. 2011-06-02 14:42:13 +02:00
Alexandre Julliard 5e67dcd10f widl: Fix representation of context handles in the format string. 2011-06-02 14:41:55 +02:00
Alexandre Julliard 0f8b64a57b widl: Add a more generic way of determining the type of handle for a function. 2011-05-31 18:32:58 +02:00
Alexandre Julliard 21cbdaa1eb widl: Support using custom handle types with the implicit_handle attribute. 2011-05-31 18:32:58 +02:00
Alexandre Julliard 968c8688c4 widl: Array dimensions have to be constants. 2011-05-28 13:39:18 +02:00
Alexandre Julliard 0486140c3d widl: Don't output callback conformances for non-interpreted functions.
The Windows marshaller calls the callback with an invalid stack.
2011-05-28 13:38:25 +02:00
Alexandre Julliard 93dd252116 widl: Output a list of binding routines in client files. 2011-05-27 12:07:29 +02:00
Alexandre Julliard c2406be6d4 widl: Add support for top-level conformances. 2011-05-26 21:58:59 +02:00
Alexandre Julliard d8059aee3a widl: Move the check for already processed types into the type-specific functions.
Fixed a couple of instances where types were printed redundantly or
incorrectly reused.
2011-05-26 19:45:00 +02:00
Alexandre Julliard 52cb5b20f7 widl: Set the correct stack size for parameters in the proc format string. 2011-05-25 20:32:12 +02:00
Alexandre Julliard 56e65b4534 widl: Allow using fixed size arrays as strings. 2011-05-25 19:34:26 +02:00
Alexandre Julliard 96a5def678 widl: Also compute buffer size for non-ref pointers. 2011-05-25 00:22:40 +02:00
Alexandre Julliard 8f156e266e widl: Return the buffer size of the object pointed by a ref pointer for all types. 2011-05-25 00:07:15 +02:00
Alexandre Julliard 2099d94001 widl: Call marshalling routines directly also for user-marshalled types accessed through a ref pointer. 2011-05-24 23:10:54 +02:00
Alexandre Julliard bf9d2904dc widl: Don't call the buffer sizer routine when the size is known already. 2011-05-24 22:47:07 +02:00