Commit Graph

73 Commits

Author SHA1 Message Date
Francois Gouget bf72af30d0 Modify widl to put the C COM macros inside an #ifdef COBJMACROS block
as is done in the Windows headers.
Add #define COBJMACROS where needed in Wine.
Fixes the compilation of the oleaut32/tests/olefont.c and
urlmon/tests/url.c conformance tests with the Windows headers.
2004-08-11 19:43:45 +00:00
Filip Navara 19fd305a7e Make widl compile without most of Windows/Wine headers, so it can be
reused by other projects.
2004-04-22 03:40:01 +00:00
Robert Shearman 7f0abaffe5 - Handle "? :" conditionals.
- Allow [handle] attribute for types.
2004-04-19 23:08:22 +00:00
Ove Kaaven 5d267d7372 Added rules to parse library, coclass, dispinterface, and module
definitions, and a number of attributes, and cleaned up a few things.
Started on a typelib generation framework.
2004-01-07 04:21:27 +00:00
Alexandre Julliard ba5a968157 Added partial support for function pointers. 2003-09-03 20:16:24 +00:00
Alexandre Julliard 40672f99f8 Support objects with no method definitions (suggested by Jon
Griffiths).
2003-07-22 03:18:46 +00:00
Alexandre Julliard 09242a8ea6 Add #ifdefs around forwards and interfaces like MIDL does. 2003-07-01 03:43:09 +00:00
Alexandre Julliard 2d5519f15c The com_interface attribute is not needed on derived classes.
Removed the ICOM_CTHIS* macros.
2003-04-12 00:09:14 +00:00
Alexandre Julliard aae3cb61cd Simplified COM interface declarations, removing the need to define
both an xxx_METHODS and an xxx_IMETHODS macro.
2003-04-11 00:31:02 +00:00
Alexandre Julliard 55379110c5 Get rid of the ICOM_CALL macros. 2003-04-10 21:13:58 +00:00
Alexandre Julliard f00c46f030 Use a more compatible technique to declare COM interfaces methods,
using Microsoft's STDMETHOD macros instead of the Wine-specific
ICOM_METHOD ones.
2003-04-10 00:19:24 +00:00
Ove Kaaven be3c1141e3 Declare user-marshaller prototypes for types declared with [wire_marshal].
Define __WIDL__ preprocessor macro, so Wine-specific IDL can be enclosed
in #ifdef __WIDL__. Fixed a file output bug.
2003-01-09 01:05:54 +00:00
Alexandre Julliard ea118ecb50 Fix the type of the This pointer in the vtbl functions inherited from
the base class.
2002-12-17 21:05:16 +00:00
Ove Kaaven 998236b7cf Output raw ICOM-less C/C++ interface definitions by default. Added new
-b and -B command-line options for compatibility with ICOM macros.
2002-12-15 03:01:20 +00:00
Ove Kaaven 064c48a607 Include guiddef.h in widltypes.h. 2002-12-15 01:13:18 +00:00
Ove Kaaven e30a96776a Parse the NOT operator, the [idempotent] attribute, and the handle_t
and error_status_t types. Improved some parsing rules to get rid of
the LINK_LAST and LINK_SAFE macros. Enclose generated .h file within
an extern "C" (for C++). Output function prototypes for regular RPC
interfaces.  Fixed a couple of bugs.
2002-12-03 19:12:07 +00:00
Ove Kaaven 34e2f87f8f Handle encapsulated unions in a cleaner (and less buggy) way. Emit the
names "DUMMYUNIONNAME" and "DUMMYSTRUCTNAME" for anonymous unions and
structs. Support const and extern definitions. Retain tokens (and
whether numbers are hex or not) used for computing constant
expressions, so that the full expression can be written to the header
file instead of the computed integer result of the expression. Parse
the sizeof() operator.  Compute and remember constant definitions and
enum values so they can be used in expressions. Improved identifier
lookup speed. Fixed some bugs.
2002-11-30 01:49:46 +00:00
Ove Kaaven 189397795d Added "generate headers only" command-line option. Implemented imports
from inside interface definitions. Fixed a few problems with
generating header files for COM interfaces.
2002-11-21 00:02:38 +00:00
Alexandre Julliard 98f12a0db1 Make sure widl doesn't depend on the headers it has to generate. 2002-11-13 21:31:01 +00:00
Ove Kaaven 03c7d46806 Support for enums, arrays, encapsulated unions, signed/unsigned
qualifiers, UUIDs, include guards, the new ICOM_DEFINE1 macro, and
some other improvements.
2002-11-12 02:12:35 +00:00
Dmitry Timoshkov c63d98038a Include protection for <unistd.h>, <sys/types.h> and <sys/stat.h>. 2002-08-17 18:28:43 +00:00
Alexandre Julliard ea97b39a79 Avoid dependencies on y.tab.h. 2002-08-13 03:30:58 +00:00
Alexandre Julliard 7d4ee77cab Merged the IDL compiler written by Ove Kaaven. 2002-07-16 03:20:45 +00:00