Rob Shearman
6e7dcde26e
widl: Add support for generating code for out-only context handles by calling NdrContextHandleInitialize.
2007-12-26 13:27:06 +01:00
Rob Shearman
3e5f7457f6
widl: Fix pointer detection in structures and arrays.
...
write_embedded_types doesn't descend into all types contained by the
array or structure, so create a new function, type_has_pointers, for the
purpose of descending into all types and returning whether or not
pointers are present.
2007-12-26 13:26:02 +01:00
Rob Shearman
7f3abe7757
widl: Fix the generation of temporary variables for declared arrays.
...
These need to include their array part so use var->type instead of
var->ref->type.
2007-12-24 13:30:33 +01:00
Rob Shearman
b57a322b02
widl: Tweak the rules for when to call pfnFree for arrays.
...
Varying arrays that aren't unmarshalled shouldn't be freed, but
conformant arrays that aren't unmarshalled should.
2007-12-21 12:43:18 +01:00
Rob Shearman
37c8d8ecac
widl: Fix the length used when clearing alignment space in generated files.
...
Only do the clearing when marshalling a base type.
2007-12-19 19:34:47 +01:00
Rob Shearman
57947d9f9c
widl: The detection of types is highly dependent on the ordering of the various type detection functions.
...
Therefore, needs_freeing would have to duplicate a lot of
write_remoting_arg in order to get the detection right. Because of
this, it is easier and will cause less problems in the future to
simply move the logic of needs_freeing into write_remoting_arg in the
appropriate handling code for the detected type.
2007-12-19 18:32:13 +01:00
Rob Shearman
b81f4c24db
widl: Only base types or reference pointers to base types don't need to be freed.
...
There are other cases where calls to Free functions can be omitted (such
as types always unmarshalled using buffer memory with no embedded
pointers), but these are easier dealt with inside the relevent case in
write_remoting_arg.
2007-12-17 11:57:25 +01:00
Rob Shearman
45d6a959fb
widl: Return types shouldn't be freed.
2007-12-17 11:57:16 +01:00
Rob Shearman
32cf944e9c
widl: Clear padding in the buffer due to alignment.
2007-12-17 11:57:10 +01:00
Rob Shearman
9896938fab
widl: Don't write redundant FC_RP type format out for conformant strings, unless it is a top level variable.
2007-12-14 12:23:33 +01:00
Rob Shearman
00db711c6f
widl: Swap the version packing order back to what typelibs expect.
2007-12-13 14:30:40 +01:00
Rob Shearman
9741751962
widl: Remove some confusion in how version numbers are packed into an attribute by defining some macros for this purpose.
...
Remove unneeded includes.
2007-12-12 16:03:35 +01:00
Rob Shearman
d458a599eb
widl: Add support for non-basetype return types.
2007-12-11 18:07:05 +01:00
Rob Shearman
85e87ae829
widl: iid_is should take expressions, not just identifiers.
2007-12-10 14:40:37 +01:00
Rob Shearman
72d9569cc4
widl: Support the address-of operator in expressions.
2007-12-10 14:40:29 +01:00
Rob Shearman
8ead7fe797
widl: Make sure to generate freeing calls for all non-simple structures with pointers and pointers to user marshalled types.
2007-12-10 14:40:14 +01:00
Rob Shearman
e6f2329676
widl: Arrays should have freeing code generated on the server side, even if they are [in] parameters.
2007-12-10 14:40:10 +01:00
Rob Shearman
701a25c4b2
widl: Always write a freeing function for arrays in generated code.
...
Fix the conditions under which pfnFree is called to only include arrays
that will have been allocated, instead of being pointed to the buffer.
2007-12-10 14:40:07 +01:00
Alexandre Julliard
b0585bf10f
Make.rules: Added rules for building the dlldata.c file.
2007-12-10 14:26:13 +01:00
Rob Shearman
a513ff4926
widl: Don't override the pointer type in top-level arrays.
2007-12-08 19:57:25 +01:00
Michael Stefaniuc
7f5757f683
tools: Remove duplicate includes.
2007-11-19 13:54:52 +01:00
Francois Gouget
81a5701ca9
Assorted spelling fixes.
2007-11-09 13:07:12 +01:00
Dan Hipschman
a0ac63961d
widl: Don't rely on type_memsize to return 0 for all conformant arrays.
2007-11-06 13:02:56 +01:00
Dan Hipschman
b0bc8e58de
widl: Don't output a void conformance for NdrClearOutParameters.
2007-11-05 13:24:37 +01:00
Dan Hipschman
8d15820f79
widl: Handle pointers to conformant arrays (e.g., "[size_is(, n)] int **p; ").
2007-11-05 13:24:37 +01:00
Dan Hipschman
ea7ab4da66
widl: Add a --local-stubs option.
2007-10-31 12:39:54 +01:00
Paul Millar
17e934669e
widl: Add support for overriding recorded time, allowing binary-identical compilation.
2007-10-29 12:08:10 +01:00
Dan Hipschman
70e12b31b8
widl: Fix ExprEvalRoutines output.
2007-10-29 12:03:26 +01:00
Dan Hipschman
9825ac7a1a
widl: Fix a crash in compare_expr.
2007-10-25 12:54:57 +02:00
Dan Hipschman
f974facf5a
widl: Allow void pointers with iid_is attributes.
2007-10-25 12:54:52 +02:00
Dan Hipschman
1aab1072c1
widl: Use error_loc instead of yyerror.
2007-10-24 13:51:58 +02:00
Dan Hipschman
9051918976
widl: parser_error must append a newline, so write a new function, error_loc.
2007-10-24 13:51:48 +02:00
Dan Hipschman
fd6a276f4c
widl: Update the manpage.
2007-10-22 13:48:03 +02:00
Dan Hipschman
ff8930f2bf
widl: Fix problems with variable-size user types.
2007-10-22 13:47:56 +02:00
Francois Gouget
4152085af1
widl: Modify generic_msg() to behave like all the other Wine tracing methods, that is to not append a '\n' to the message.
2007-10-19 11:46:01 +02:00
Francois Gouget
599c74296c
widl: Add the trailing '\n' to an error message.
2007-10-19 11:45:52 +02:00
Francois Gouget
490841ee06
widl: Remove internal_error() as it is unused.
2007-10-19 11:45:47 +02:00
Dan Hipschman
1d0f9378bc
widl: Detect conformant arrays of user types correctly.
2007-10-18 12:09:23 +02:00
Dan Hipschman
4fb7a0e40e
widl: Remove printf format strings that aren't really format strings.
2007-10-18 12:09:14 +02:00
Dan Hipschman
40e90aae25
widl: Generate dlldata files.
2007-10-18 12:09:02 +02:00
Dan Hipschman
67c634c203
widl: Improve file cleanup when errors occur.
2007-10-18 12:07:30 +02:00
Dan Hipschman
ebfbec6e5c
widl: Output the correct value for TableSize in ProxyFileInfo.
2007-10-16 12:48:17 +02:00
Dan Hipschman
f173addbef
widl: Use new functions need_proxy and need_stub to clean up code and avoid generating unnecessary files.
2007-10-16 11:03:49 +02:00
Gerald Pfeifer
a7c6a27696
widl: Fix build failure in parser.y.
2007-10-15 12:05:06 +02:00
Dan Hipschman
acfde97b9e
rpcrt4, widl: Make pointer layouts compatible with windows; fix conformant array tests.
2007-10-11 16:24:28 +02:00
Dan Hipschman
2226ddcadf
widl: Keep track of every allocated type_t to simplify set_all_tfswrite.
2007-10-09 17:52:45 +02:00
Dan Hipschman
24ce74e96a
widl: Implement pointer_default functionality.
2007-10-09 17:52:45 +02:00
Dan Hipschman
cfa5457270
widl: Allow quoted UUIDs.
2007-10-09 17:52:45 +02:00
Dan Hipschman
d00ff2ed58
widl: Make structs containing user types bogus; fix square_test_us test failure.
2007-10-09 11:39:26 +02:00
Dan Hipschman
9650cf9bdb
widl: Correct default pointers.
2007-10-03 10:09:56 +02:00