Kevin Koltzau
a8b209752f
widl: Fix 64bit warning.
2006-02-22 22:17:25 +01:00
Mike Frysinger
5392844392
Add support for 'make install DESTDIR'.
2006-02-14 13:51:38 +01:00
Francois Gouget
90aaf6ba8f
include: Add missing LANG_xxx and SUBLANG_xxx constants.
2006-02-14 10:42:12 +01:00
Robert Shearman
59dd416fd2
widl: Fix a typo when removing TYPEFLAG_FDUAL.
2006-02-10 14:51:39 +01: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
649d5d0e8e
widl: Write out TYPEFLAG_FDUAL, TYPEFLAG_FDISPATCHABLE and
...
TYPEFLAG_FOLEAUTOMATION typelib flags.
2006-02-09 12:09:44 +01:00
Robert Shearman
59830d69b4
widl: Fix some warnings caused by making attributes const.
2006-02-07 16:25:10 +01:00
Alexandre Julliard
91da64c9ca
widl: Remove '\n' from yyerror calls.
2006-02-07 12:36:20 +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
55df46ab85
widl: Merge marshall_arguments and unmarshall_arguments into one
...
function to remove the large amount of duplicated code.
2006-02-07 12:32:24 +01:00
Robert Shearman
f1bb0a474b
widl: Yet more const attributes.
2006-02-07 12:31:43 +01:00
Robert Shearman
511463f3a5
widl: More const attributes.
2006-02-07 12:31:17 +01:00
Eric Kohl
417a61fa61
widl: Fix proc format string for explicit binding handles.
2006-02-07 12:30:55 +01:00
Robert Shearman
8d7fa4c013
widl: Write out the correct FC type if the structure has pointers.
2006-02-07 12:30:23 +01:00
Robert Shearman
4c8370f97e
widl: Split pointer writing into a separate function.
2006-02-07 12:30:07 +01:00
Robert Shearman
9f0c45b7e7
widl: Fix pointer detection for structures with embedded arrays.
...
Pointers have priority over every other type, so move the detection to
the top of get_struct_type.
Fall through from the embedded array detection to the embedded
structure handling code so that conformance, variance and pointer
presence is inherited from the array's base type.
2006-02-07 12:29:39 +01:00
Robert Shearman
864d5a38c5
widl: Increment the type format string when writing the pointer
...
layouts.
Write out pointer layouts for structures.
2006-02-07 12:28:33 +01:00
Robert Shearman
0d22347f44
widl: Make all pointer fields of expr_t structure constant.
2006-02-07 12:28:20 +01:00
Robert Shearman
ccf509b4c6
widl: Add architecture for generating pointer layouts.
2006-02-03 18:51:17 +01:00
Eric Kohl
dd57b45aaa
widl: The 'string' attribute can also be used with unsigned characters.
2006-02-03 18:47:06 +01:00
Alexandre Julliard
a488901256
widl: Some cosmetic fixes in generated code.
2006-02-02 13:23:28 +01:00
Alexandre Julliard
0f2a642d70
widl: Make sure the token variables are always initialized properly.
2006-02-02 13:22:47 +01:00
Robert Shearman
0d4e1bc336
widl: Fix a SEGV when using arrays declared using a pointer and
...
attributes, instead of array indices (reported by Eric Kohl).
2006-02-01 12:29:23 +01:00
Robert Shearman
c418226093
widl: Changes to output for better debugability.
...
Write the offset and the absolute address for referenced types.
Write the current offset out when writing a pointer type.
2006-01-31 18:08:24 +01:00
Robert Shearman
1478ac85a9
widl: Clean up conformant struct handling.
...
Make the writing of conformant structures take advantage of the new
type format string offset handling.
2006-01-31 18:08:03 +01:00
Robert Shearman
5764d5518d
widl: Fix the writing of arrays with size specified in the array
...
expression instead of the size_is expression.
2006-01-31 18:07:45 +01:00
Robert Shearman
06ab21b668
widl: Improve the current type offset passing.
...
Change the functions to take the current type offset and return the
start of the type written.
2006-01-31 18:07:20 +01:00
Robert Shearman
ac5a4393d5
widl: The stack/structure offset in correlation descriptors should be a short.
2006-01-31 18:06:53 +01:00
Robert Shearman
513996fde4
widl: Do constant folding for the sizeof operator on simple types.
2006-01-31 18:06:25 +01:00
Robert Shearman
0a2c5b73fd
widl: Support client/server generation for explicit_handle interfaces
...
(based on a patch by Eric Kohl).
2006-01-31 18:06:17 +01:00
Robert Shearman
c08e00a9ec
widl: Implement constant conformance.
2006-01-31 18:05:43 +01:00
Robert Shearman
35d1347cfa
widl: Fix the type offset used in marshaling/unmarshaling.
...
Make a copy of type_offset so that it only gets incremented once per
function, instead of twice.
2006-01-31 18:05:33 +01:00
Robert Shearman
2330d73f4a
widl: Implement the writing of defaultvalue constants for enum values.
2006-01-31 18:04:20 +01:00
Robert Shearman
cf1ccfb712
widl: Use a macro to write out FC types, along with the current offset
...
which is useful for debugging.
2006-01-31 12:25:54 +01:00
Robert Shearman
2ee6f722e0
widl: Pass the current type format string offset through all type
...
writing functions.
2006-01-31 12:24:54 +01:00
Robert Shearman
a6909fa5e8
widl: Eliminate redundant callback routines.
...
Add a function for comparing expressions and use it to eliminate
redundant callback functions.
2006-01-31 12:24:11 +01:00
Robert Shearman
b59c995c89
widl: Implement callback conformance.
2006-01-27 12:53:32 +01:00
Robert Shearman
2d4edc3b3d
widl: Generate type format strings for conformant varying arrays.
2006-01-24 11:14:59 +01:00
Robert Shearman
2eedb11f22
widl: Fix detection of varying arrays.
...
Correctly identify structures containing varying arrays as conformant
varying structures.
2006-01-24 11:14:38 +01:00
Robert Shearman
b4fb36c363
widl: Fix detection of conformant varying structs.
...
Rename has_conformant_array to has_conformance, add a new variable
has_variance and map has_conformant_string to has_conformance and
has_variance.
A conformant varying struct should be returned if just variance is
present and even if no pointers are present.
2006-01-24 11:14:15 +01:00
Robert Shearman
9f76c0cfee
widl: Support generation of conformant structure type strings.
2006-01-24 11:13:49 +01:00
Robert Shearman
90032b2da6
widl: Conformant arrays have a size of 0.
...
Conformant arrays should cause a size of 0 to be returned from
type_memsize.
2006-01-24 11:13:30 +01:00
Robert Shearman
73023890c5
widl: Support correlation descriptors in structures.
2006-01-24 11:12:54 +01:00
Robert Shearman
e9c771f98b
widl: Error if an array is in the middle of a structure.
...
Fix detection of conformant arrays and output an error if the array
isn't at the end of the structure.
2006-01-24 11:12:20 +01:00
Robert Shearman
362d42e082
widl: Fix the detection of conformant and pointer structs.
2006-01-24 11:11:56 +01:00
Robert Shearman
8f1ed85891
widl: Simple structs and complex pointers.
...
Write out type format string for simple structs and for pointers to
non-simple types.
2006-01-24 11:11:29 +01:00
Robert Shearman
584c89bd8f
widl: Add framework for generating struct and union type format strings.
2006-01-24 11:10:59 +01:00
Robert Shearman
263a75d47a
widl: Support different types of simple pointers.
...
Support pointer types in unmarshall_arguments.
2006-01-24 11:10:42 +01:00
Robert Shearman
69551fdf74
widl: Generate NdrNonConformatString* calls for non-conformant string types.
2006-01-24 11:10:08 +01:00
Robert Shearman
a6c6e1d032
widl: Add functions for detecting array and string types.
...
Add functions for detecting array and string types and use these in
both writing type format strings and when marshalling and
unmarshalling parameters.
2006-01-24 11:09:53 +01:00
Robert Shearman
793bc8de69
widl: Support some more complicated conformance / variance expressions.
2006-01-24 11:09:03 +01:00
Robert Shearman
4a7c04791d
widl: Start implementing writing of conformance/variance descriptors.
2006-01-24 11:08:20 +01:00
Robert Shearman
21a90850cb
widl: Strings.
...
Write out type format strings for string types.
2006-01-24 11:07:39 +01:00
Robert Shearman
d07589e32f
widl: Arrays.
...
Write out type format strings for arrays, except for the missing
generic functionality of conformance and variance descriptors.
2006-01-24 11:07:13 +01:00
Robert Shearman
fce01e6920
widl: Simplify write_typeformatstring_type.
...
Simplify handling of types in write_typeformatstring_type by only
writing non-pointer types out when ptr_level is 0. Add stubs for
functions that will write out the type format string for strings and
arrays.
2006-01-24 11:06:32 +01:00
Robert Shearman
479be2e6af
widl: Don't use recursion for write_typeformatstring_type.
...
Since a var_t can now be passed in, rename to
write_typeformatstring_var. Simplifies the code.
2006-01-24 11:06:10 +01:00
Robert Shearman
6d76ad87c6
widl: Don't use recursion to implement write_procformatstring_type.
...
Renamed to write_procformatstring_var now since we can pass a var_t in
again. This results in simpler code.
2006-01-24 11:05:51 +01:00
Robert Shearman
ba0f0761f0
widl: Generate static sizing information for fixed size structs.
...
Don't generate FC_*_BASETYPE proc and type format strings for
non-basetype fields/params.
2006-01-06 21:06:24 +01:00
Alexandre Julliard
1e96455094
Remove YY_NO defines that cause warnings.
2006-01-05 12:20:05 +01:00
Alexandre Julliard
88991e2a4e
Support building flex files without debug support.
2006-01-03 15:11:46 +01:00
Alexandre Julliard
0ae2c69c7a
Added some flex options to avoid compiler warnings.
...
Moved options from the Makefile into the source.
2006-01-03 12:16:05 +01:00
Robert Shearman
8494f57d17
widl: Output sizing information for arrays in the generated marshaling code.
2005-12-31 13:19:13 +01:00
Robert Shearman
ae94c2207f
widl: Export the bracket adding functionality of do_write_expr outside
...
of header.c.
2005-12-31 13:18:49 +01:00
Robert Shearman
f56737579e
widl: Fix merge conflict.
2005-12-26 13:22:46 +01:00
Robert Shearman
93775adf75
widl: Follow type references in procformat and typeformat string generation.
2005-12-26 13:22:32 +01:00
Robert Shearman
7fb311b49f
widl: Handle marshaling and unmarshaling structures.
2005-12-26 13:22:05 +01:00
Robert Shearman
4acabfd719
widl: Out parameters.
...
Marshall and unmarshall out parameters for servers and clients
respectively.
Write out array components for declared local variables in generated
server code.
2005-12-26 13:21:38 +01:00
Robert Shearman
e0dd7b6ed8
widl: Remove some duplication.
...
Remove some duplicated code by calling an improved
get_required_buffer_size.
Add some more newlines in the generated code to separate separate
stages.
Calculate the buffer size of [out] arguments in generated server code.
Fix the direction passed into unmarshall_arguments.
2005-12-26 13:20:59 +01:00
Robert Shearman
7e5cf94f13
widl: Pass a state into marshall_arguments and unmarshall_arguments to
...
decide which parameters should be considered based on their direction.
2005-12-26 13:14:28 +01:00
Robert Shearman
24d1b71d91
widl: Generate marshaling and unmarshaling statements for arrays.
2005-12-26 13:13:41 +01:00
Robert Shearman
25116ae360
widl: Treat variables with array indices the same as pointers.
2005-12-26 13:13:04 +01:00
Robert Shearman
c0f4605b82
widl: Advance the type format string whilst marshaling and
...
unmarshaling arguments.
2005-12-26 13:12:46 +01:00
Robert Shearman
c8703d17b0
widl: Convert the main while loops in marshall_arguments and
...
unmarshall_arguments into for loops.
2005-12-26 13:12:26 +01:00
Robert Shearman
413738810f
widl: Add support for marshalling and unmarshalling conformant strings.
2005-12-26 13:12:03 +01:00
Robert Shearman
7f2419ceed
widl: Add some const attributes.
2005-12-26 13:11:33 +01:00
Robert Shearman
73dff5c465
widl: Prepare marshall and unmarshall code generation functions for
...
accepting pointers.
2005-12-26 13:09:36 +01:00
Robert Shearman
86c3a2e76a
widl: Fix SEGVs with client and server code generation when an
...
interface has no methods.
2005-12-26 13:08:51 +01:00
Robert Shearman
73a25d316d
widl: Generate correct proc format strings for [out] and [in, out] parameters.
2005-12-26 13:07:55 +01:00
Robert Shearman
e59dcf53fc
widl: Use the same precendence rule for the conditional operator as in wpp.
...
Fixes several shift/reduce warnings.
2005-12-26 13:07:08 +01:00
Robert Shearman
30a9f99bb9
widl: Better array support.
...
Treat variables with array indices the same as pointers when writing
out the proc & type format strings.
Fix a typo when writing out the proc format string where a non-return
type was written out for a return type and vice-versa.
2005-12-26 13:06:29 +01:00
Robert Shearman
783198be37
widl: Support non-basic variables in proc format strings.
2005-12-26 13:05:55 +01:00
Robert Shearman
88fd90b4c5
widl: Add helper functions that return the size of procformat and
...
typeformat strings for variables.
2005-12-26 13:05:29 +01:00
Hans Leidekker
4f46232368
widl: Avoid lvalue casts in generated code.
2005-12-19 21:20:14 +01:00
Jacek Caban
a3b35129ce
widl: Added bindable and displaybind attributes handling.
2005-12-16 12:40:17 +01:00
Robert Shearman
435e36e366
widl: Start generating type format strings.
...
Based on a patch by Eric Kohl.
2005-12-13 11:22:08 +01:00
Eric Kohl
c4173f7b99
widl: Server stubs in generated code are void functions.
2005-12-13 11:12:37 +01:00
Robert Shearman
ccdc119da0
widl: Generate FC_ERROR_STATUS_T proc format.
...
- Include the header file for the functions implemented in typegen.c.
- Generate proc format for FC_ERROR_STATUS_T type.
2005-12-12 12:14:31 +01:00
Robert Shearman
12159aec96
widl: Support explicit binding handles.
2005-12-12 12:14:03 +01:00
Robert Shearman
759e3c9fe3
widl: Zero initialize parameters in the generated server code.
...
Zero initialize parameters in the generated code. Based on a patch by
Eric Kohl.
2005-12-12 12:13:43 +01:00
Robert Shearman
dfb716f3d6
widl: Calculate the size of buffer required.
...
- Calculate the size of buffer required.
- Fix a typo.
- Set the buffer start and buffer end markers.
2005-12-12 12:12:50 +01:00
Robert Shearman
fc3821f475
widl: Don't cast buffer pointers to long in generated server code.
2005-12-12 12:12:06 +01:00
Eric Kohl
6744d4e3ea
widl: Support multiple interfaces per file.
2005-12-12 12:11:44 +01:00
Robert Shearman
f4356a64e3
widl: Don't treat FC_SMALL as FC_SHORT.
...
FC_SMALL is its own type and is the same size as FC_CHAR, not
FC_SHORT.
2005-12-12 12:11:11 +01:00
Robert Shearman
6066106bb0
widl: Use WCHAR instead of wchar_t.
...
Output IDL wchar_t types as WCHAR to avoid conflicts with the
generally incompatible Unix wchar_t.
2005-12-12 12:10:26 +01:00
Robert Shearman
fea330364b
widl: Don't output __RPC_FAR in generated code.
2005-12-12 11:51:11 +01:00
Vincent Béron
fe987b3035
widl: Issue correct C++ headers.
2005-12-09 11:22:04 +01:00
Robert Shearman
b86efe5d11
widl: Formatting cleanups.
2005-12-08 13:48:46 +01:00
Robert Shearman
92c568ab5d
widl: Marshal and unmarshal basic types.
2005-12-08 12:53:58 +01:00
Robert Shearman
35d327bd0d
widl: Add a type generator framework.
...
Add a framework for writing the strings for marshaling and
unmarshaling parameters and make the client and server use it.
2005-12-08 12:52:13 +01:00
Eric Kohl
ba39a874d4
widl: Write out argument lists in the server.
...
- Add framework for updating proc offsets.
- Write out argument lists in the server.
2005-12-08 12:48:44 +01:00
Eric Kohl
80e262202f
widl: Rename some variables.
2005-12-08 12:45:45 +01:00
Vincent Béron
bce123dc46
Use the typedef'd declaration of IRpcStubBuffer and IRpcChannelBuffer
...
in RPC _Stubs.
Add IRpcStubBuffer and IRpcChannelBuffer declarations to objbase.h.
2005-12-02 13:32:09 +01:00
Vincent Béron
864f631d28
Reorder the virtual table definition so it's defined before it is used
...
in widl header output.
2005-12-02 13:29:52 +01:00
Vincent Béron
85e9474c78
Use interface instead of struct where appropriate in widl.
2005-12-02 13:28:05 +01:00
Alexandre Julliard
0ec7e1a591
Renamed all .cvsignore files to .gitignore.
2005-11-26 13:10:33 +01:00
Francois Gouget
6d442aeb34
Assorted spelling fixes.
2005-11-23 20:14:43 +01:00
Huw Davies
8056092909
Prefix [putref] property names with putref_.
2005-11-14 15:12:24 +00:00
Alexandre Julliard
36c3199782
Default search path for an include file should be based on the path of
...
the parent source file, not the current directory.
2005-10-10 18:06:50 +00:00
Alexandre Julliard
5131ba6150
Set the widl version to be the same as the global package version.
2005-10-08 10:37:09 +00:00
Alexandre Julliard
12a749984c
Put Wine version information in all the man pages.
2005-10-06 16:10:01 +00:00
Alexandre Julliard
fb3a9ed135
Fixed some nroff warnings.
2005-10-06 11:40:43 +00:00
Alexandre Julliard
cd91bc61be
Now that we are requiring bison anyway, make the .tab.c file use the
...
same base name as the .y file, so that we can generate correct
dependencies in all cases.
2005-09-28 18:17:08 +00: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
Alexandre Julliard
49b7fdcfc0
Removed the broken mmap64 configure check, and moved the
...
_FILE_OFFSET_BITS define to wine/port.h. Made sure that all files that
need the define include it.
2005-08-03 21:25:10 +00:00
Robert Shearman
4e7628ffb1
- The header global variable is NULL when not generating a header so
...
don't try to use it in functions that may be called by the client
code.
- Make the functions that take char * take const char *.
2005-08-03 14:55:22 +00:00
Stefan Huehner
b8585b8d0c
Change some char* to const char* to fix warnigns.
2005-07-21 11:59:11 +00:00
Stefan Huehner
737978a833
Fix a -Wsign-compare warning.
2005-07-14 12:18:38 +00:00
Stefan Huehner
f4285e68fe
Fix some -Wsign-compare warnings.
2005-07-13 11:29:10 +00:00
Huw Davies
a2051075fe
Update the import table code to eliminate a few magic constants.
2005-06-29 19:18:41 +00:00
Huw Davies
a2c58e238f
Add comments describing the first DWORD in an import table entry.
2005-06-28 13:52:23 +00:00
Stefan Huehner
e546238c7e
Fix some -Wmissing-declarations by making functions static.
2005-06-15 18:10:39 +00:00
Robert Shearman
33b09d457f
Add more struct types for TLB generation.
2005-06-09 09:45:26 +00:00
Alexandre Julliard
9c04ad7439
Workaround to allow using the async keyword as method name.
2005-05-26 12:22:28 +00:00
Juan Lang
c194b2e853
Always initialize header file name, to prevent "#include (null)"
...
statements in generated files.
2005-04-18 16:54:54 +00:00
Juan Lang
b5ffb7f215
Put space between include directive and include file.
2005-04-15 14:09:45 +00:00
Juan Lang
6d46ac263f
Add proxy/stub options to widl man page.
2005-04-15 14:09:27 +00:00
Francois Gouget
6b10c324c5
Assorted spelling fixes.
2005-03-30 17:08:31 +00:00
Vincent Béron
4d752e95ad
Keep types sorted in alphabetical order.
2005-03-28 10:01:20 +00:00
Vincent Béron
2eaf7b2e8a
Add support for single in idl files.
2005-03-28 10:01:13 +00:00
Jacek Caban
10a605b072
Added handling of unsigned type.
2005-03-24 15:07:57 +00:00
Jacek Caban
e6150fe206
Write uuid of library in header.
2005-03-05 10:49:22 +00:00
Francois Gouget
fbb3343547
Assorted spelling fixes.
2005-03-02 13:53:50 +00:00
Jon Griffiths
eb5bf7dd38
Documentation spelling fixes.
2005-02-25 14:07:56 +00:00
Alexandre Julliard
afcab24230
Removed the useless proxy.h header file.
...
Fixed a couple of warnings.
2005-02-23 21:03:15 +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
Vincent Béron
5c837cac49
A RPC_FC_ENUM16 is a VT_USERDEFINED.
2005-02-14 11:05:41 +00:00
Huw Davies
1cba04d7d6
Add support for modules.
2005-02-08 16:51:35 +00:00
Huw Davies
a82b1bcfe5
Check if we've already added the ptr to iface typedesc before adding a
...
new one.
2005-02-08 14:27:52 +00:00
Vincent Béron
df5051e925
Support some more attributes for interface properties.
2005-02-08 13:43:34 +00:00
Vincent Béron
f6ff452f17
Support ATTR_READONLY for interface properties.
2005-02-08 12:56:22 +00:00
Huw Davies
13e36059a8
Add VARIANT_BOOL.
...
Fix CURRENCY alignment.
A function with a [retval] param has a bit set in the FKCCIC bitfield.
Two functions with the same name share the same id.
The param names of propput and propputref functions don't go into the
typelib.
2005-02-08 12:09:42 +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
13b7c5ac12
Dynamically allocate the type data storage.
...
Split the function and variable type data into two - this will be
needed for dispinterfaces.
2005-01-31 16:24:23 +00:00
Vincent Béron
653c05971c
Check that there are some methods to iterate through before iterating
...
through them.
2005-01-31 11:30:26 +00:00
Huw Davies
d488cb3e70
Structs with ptrs are also VT_USERDEFINED.
2005-01-28 13:59:08 +00:00
Huw Davies
652ec646ad
When adding an interface, midl adds the inherited interface first
...
unless the inherited interface doesn't itself inherit.
Fix the id, sizevft and datatype2 fields for interfaces that inherit.
Prevent a crash if the typelib is empty.
Clarify a few more entries on typelib_struct.h
2005-01-26 20:40:34 +00:00
Huw Davies
0e53bb3f7b
Fix typelib only option.
...
Make -t and -h options inclusive.
2005-01-26 19:40:47 +00:00