Commit Graph

37 Commits

Author SHA1 Message Date
Robert Shearman 4cd506b8fd widl: The lval member of var_t is essentially a duplicate of eval->cval.
- Generate eval's for enums that don't explicitly have one. This means
that enums written in header files won't match exactly what has been put
into the IDL file, but the numeric constat is the same and MIDL does a
similar thing.
- Replace constant lookups with eval->cval instead of lval.
2006-03-31 17:35:04 +02:00
Robert Shearman 91c35be7cc widl: Write out more TYPEFLAGs and add more type library-specific
attributes to the parser.
2006-02-09 12:10:08 +01:00
Robert Shearman 4e40675032 widl: Make 'attrs' field of type_t const. 2006-02-07 12:32:57 +01:00
Robert Shearman e9ec85a01a widl: Remove unused 'rname' field of type_t. 2006-02-07 12:32:42 +01:00
Robert Shearman 511463f3a5 widl: More const attributes. 2006-02-07 12:31:17 +01:00
Robert Shearman 0d22347f44 widl: Make all pointer fields of expr_t structure constant. 2006-02-07 12:28:20 +01:00
Jacek Caban a3b35129ce widl: Added bindable and displaybind attributes handling. 2005-12-16 12:40:17 +01:00
Robert Shearman d026458860 - Output prototypes for user marshal functions at the end of the
header and by use.
- Add support for range and ptr attributes and for the "small" base
  type.
2005-09-12 20:13:40 +00:00
Vincent Béron 4d752e95ad Keep types sorted in alphabetical order. 2005-03-28 10:01:20 +00:00
Eric Kohl 5bed4857d5 - Add basic support for creating client and server stub files.
- Support implicit_handle attribute in IDL files.
- Build mixed-mode stub files.
2005-02-23 20:31:07 +00:00
Huw Davies c2c87daf4a Coclass support. 2005-02-03 13:34:28 +00:00
Huw Davies d33a553d63 Add support for typedefs. 2005-02-02 19:10:02 +00:00
Huw Davies 49eb0b70e5 Add support for dispinterfaces (slightly hacked because we force the
import of stdole2.tlb).
Add propputref attribute.
2005-02-01 18:48:25 +00:00
Huw Davies a43a250bd1 Add enum support.
Another attempt at getting the alignment bits correct.
2005-01-25 20:02:09 +00:00
Huw Davies 635221222f Add support for the help* attributes on type libraries. 2005-01-10 16:08:36 +00:00
Huw Davies a3026ca8f9 Add support for optional arguments and some suppport for the
defaultvalue attributes.
Better calculation of the typeinfo's res3 member (at least for
interfaces).
2005-01-10 14:22:24 +00:00
Huw Davies 634693c114 Add attributes control, hidden and restricted.
Correctly set the libflags for these attributes.
2005-01-09 17:59:44 +00:00
Huw Davies 346188b755 Initial support for typelib generation. 2005-01-06 20:45:21 +00:00
Huw Davies 86fead3c25 Store interfaces, structs, coclasses and modules that are to be
written into a typelib in a list.
2005-01-05 17:12:25 +00:00
Jacek Caban 54cba79d64 Added optional, defaultvalue and vararg. 2005-01-03 14:26:17 +00:00
Jacek Caban 5c98265050 Added writing forward declaration of dispinterface. 2004-10-18 19:35:08 +00:00
Alexandre Julliard 4806630104 Added support for the propget/propput function attributes. 2004-10-05 02:14:54 +00:00
Filip Navara 977d863c0e Make widl parse the 'transmit_as' and 'endpoint' keywords. 2004-04-26 23:29:59 +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 88bbfadb2c Parse the [input_sync] attribute. 2004-02-11 23:57:58 +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 e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard ba5a968157 Added partial support for function pointers. 2003-09-03 20:16:24 +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
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
Alexandre Julliard ea97b39a79 Avoid dependencies on y.tab.h. 2002-08-13 03:30:58 +00:00
Gregg Mattinson 8c9bdcc9e1 Fixes for Sparc build. 2002-08-07 01:18:41 +00:00
Alexandre Julliard 7d4ee77cab Merged the IDL compiler written by Ove Kaaven. 2002-07-16 03:20:45 +00:00