Michael Stefaniuc
0fb444b58c
tools: Remove redundant NULL checks before free() (found by Smatch).
2006-10-10 12:56:20 +02:00
Francois Gouget
4b2d7e9321
widl: Use CONST_VTBL to declare lpVtbl.
2006-09-29 17:51:45 +02:00
Michael Stefaniuc
41dd56cb7f
"One liners" printf format warning fixes for the migration of DWORD/LONG/ULONG from long to int.
2006-09-29 16:09:24 +02:00
Dan Hipschman
3ad3f8de42
widl: Don't compare result of read() to unsigned type.
2006-09-14 11:39:37 +02:00
Dan Hipschman
bd7e690c1f
widl: Remove unused parameter in create_msft_typeinfo.
2006-09-14 11:39:37 +02:00
Dan Hipschman
48006f60a7
widl: Remove unused parameter in ctl2_encode_name.
2006-09-14 11:39:37 +02:00
Dan Hipschman
954c592a6c
widl: Replace a #if by if for better compiler checking.
2006-09-14 11:39:37 +02:00
Dan Hipschman
6e7389ada8
widl: Remove unused parameter in write_ip_tfs.
2006-09-14 11:39:37 +02:00
Dan Hipschman
53a2819286
widl: Fix warning about unused structure field in lexer.
2006-09-14 11:39:37 +02:00
Dan Hipschman
a472c83f91
widl: Add -u and -U options to man page.
2006-09-14 11:39:37 +02:00
Alexandre Julliard
32ab895e46
makefiles: Generate the dependencies line to avoid some code duplication.
2006-09-14 09:38:16 +02:00
Dan Hipschman
6f4b83bce0
widl: Replace a loop with a simple computation.
2006-09-12 11:01:12 +02:00
Alexandre Julliard
86bb809e5b
widl: Change the prefix on bison-generated names to avoid the name-prefix directive.
2006-09-12 09:05:07 +02:00
Alexandre Julliard
bcdc5fb55f
Make.rules: Set the default prefix for bison files from the file basename.
2006-09-11 21:47:49 +02:00
Alexandre Julliard
145a0ba508
makefiles: List bison dependencies explicitly for parallel makes, since older bisons don't support --defines.
2006-09-11 21:43:11 +02:00
Alexandre Julliard
9c085cba0a
makefiles: Add global rules for bison and lex files.
...
Also build the .c and .h files separately to allow parallel makes.
2006-09-09 13:16:22 +02:00
Alexandre Julliard
aded30dad7
widl: Allow building without debug support in the parser.
2006-09-09 11:26:20 +02:00
Dan Hipschman
6ff8ae327f
widl: Add more complete pointer handling to write_typeformatstring_var.
2006-09-08 11:05:02 +02:00
Dan Hipschman
a407da4775
widl: Sanity check string and pointer attrs. Don't assign string as type.
2006-09-07 10:50:18 +02:00
Dan Hipschman
180ede5bfe
widl: Handle more pointer types in get_struct_type.
2006-09-07 10:49:58 +02:00
Dan Hipschman
88820263c6
widl: Remove checks for typedefs that always fail.
2006-09-07 10:49:46 +02:00
Dan Hipschman
1687a5d1db
widl: Generate an error for "int f(void a)".
2006-09-07 10:21:39 +02:00
Dan Hipschman
7e79e9d4ff
widl: Print pointers more aesthetically in generated header.
2006-09-07 10:21:29 +02:00
Dan Hipschman
929a759895
widl: Add an is_ptr function.
2006-09-07 10:21:13 +02:00
Dan Hipschman
aadc90b266
widl: Factor the entry_t structure.
2006-09-07 10:20:56 +02:00
Dan Hipschman
c117a20cdb
widl: Use type_t for typedefs, not var_t. Simplify representation.
2006-09-07 10:20:41 +02:00
Dan Hipschman
59cfad37aa
widl: Generate names for tagless structs, unions and enums.
2006-09-07 10:19:48 +02:00
Dan Hipschman
04a15af5dc
widl: Add the rest of the pointer types to write_type.
2006-08-29 12:29:26 +02:00
Alexandre Julliard
883aef172d
widl: xmalloc shouldn't initialize to zero, do that explicitly where needed.
2006-08-26 21:41:37 +02:00
Dan Hipschman
94755218ac
widl: Remove usage of type_t ref field for base types; simplify code.
2006-08-25 11:32:05 +02:00
Andrew Talbot
daa2f97bdc
widl: Write-strings warning fix.
2006-08-25 11:27:45 +02:00
Dan Hipschman
3870bf0d9e
widl: Output format-strings for interface pointers.
2006-08-18 11:36:21 +02:00
Dan Hipschman
9b16916ed1
widl: Allow format-string functions to work with objects.
2006-08-18 11:36:06 +02:00
Dan Hipschman
ed10b24e14
widl: Use typegen.c format-string functions in proxy.c.
2006-08-17 11:21:19 +02:00
Dan Hipschman
b7e7243a1e
widl: Move format-string declaration output to typegen.c.
2006-08-17 11:21:10 +02:00
Dan Hipschman
a5ff173cc3
widl: Generate proxy code for user marshalled types.
2006-08-16 12:50:21 +02:00
Dan Hipschman
c526c980d7
widl: Fix out-only temporary variable generation.
2006-08-16 12:49:57 +02:00
Dan Hipschman
e77a079b27
widl: Fix NdrComplexStructUnmarshall calls in generated code.
2006-08-16 12:49:20 +02:00
Dan Hipschman
b17d1c14d9
widl: Fix NdrConformantArrayUnmarshall calls in generated code.
2006-08-16 12:49:04 +02:00
Dan Hipschman
16d4e71230
widl: Calculate method indices in parser instead of during header generation.
2006-08-16 12:48:52 +02:00
Dan Hipschman
47519f08a7
widl: Pass the right size to MIDL_memset in generated proxy code.
2006-08-15 11:42:50 +02:00
Dan Hipschman
9e49a8d2f2
widl: Improve pointer null checking logic.
2006-08-12 11:41:08 +02:00
Dan Hipschman
06497dd44c
widl: Use ref_type to simplify some code.
2006-08-12 11:40:30 +02:00
Dan Hipschman
05001b1ca8
widl: Don't generate indentation spaces on empty lines.
2006-08-11 20:12:38 +02:00
Dan Hipschman
a20f7f46dc
widl: Fix incorrect version number in generated code.
2006-08-11 11:56:50 +02:00
Dan Hipschman
216171fe52
widl: Add ref_type (dereference typedefs) and use it.
2006-08-10 10:57:53 +02:00
Alexandre Julliard
2886e9b0e8
makefiles: Use make dependencies to create installation directories.
...
This avoids a lot of redundant calls to mkinstalldirs.
2006-08-07 17:48:18 +02:00
Dan Hipschman
4961379d74
widl: Replace strdup, malloc and realloc with xstrdup, xmalloc and xrealloc.
2006-08-05 11:25:26 +02:00
Dan Hipschman
df91150e10
widl: Generate GUID (infile_i.c) files.
2006-08-04 13:25:37 +02:00
Dan Hipschman
99056d7e2a
widl: Write forward declarations for coclass definitions.
2006-08-03 22:29:58 +02:00
Dan Hipschman
3e1ace5aa3
widl: Set type_t kind field correctly for all types.
2006-07-31 21:40:37 +02:00
Dan Hipschman
23707beb46
widl: Set defined flag for coclasses.
2006-07-31 21:36:31 +02:00
Dan Hipschman
cf4c08dcbc
widl: Fix "static declaration follows non-static declaration" in generated code.
2006-07-29 11:55:31 +02:00
Dan Hipschman
678ce9875f
widl: Encode coclass types in typelibs.
2006-07-29 11:55:20 +02:00
Dan Hipschman
9265d77584
widl: Register types for coclasses.
2006-07-29 11:55:08 +02:00
Dan Hipschman
c650cceae3
widl: Check if a typeinfo is already in a typelib before adding it.
2006-07-29 11:54:44 +02:00
Dan Hipschman
90cdff9b3f
widl: Set typelib_idx for coclasses when they're added to a typelib.
2006-07-29 11:54:21 +02:00
Dan Hipschman
c67b19b4f4
widl: Fold class_t into type_t.
2006-07-29 11:54:09 +02:00
Jacek Caban
37cf4a5260
widl: Reorder segments to match midl.
2006-07-28 12:34:27 +02:00
Jacek Caban
c9a08007eb
widl: Use cval in ATTR_ID.
2006-07-28 12:34:20 +02:00
Jacek Caban
b86bc2b634
widl: Added ATTR_BINDABLE handling to add_func_desc.
2006-07-28 12:34:14 +02:00
Jacek Caban
4d76264f3e
widl: Store typekind in msft_typeinfo_t to fix ATTR_DUAL handling.
2006-07-28 12:34:08 +02:00
Dan Hipschman
3b3632a1cd
widl: Allow trailing commas in attribute lists.
2006-07-26 10:24:06 +02:00
Dan Hipschman
12a9dfd62f
widl: Support SAFEARRAY(type) syntax.
2006-07-25 11:21:41 +02:00
Dan Hipschman
f3d01fb07b
widl: Fix redefinition of types in output.
2006-07-25 11:21:29 +02:00
Dan Hipschman
82c11ce002
widl: Allow write_type to output full pointer types.
2006-07-24 13:27:15 +02:00
Dan Hipschman
2660b8f9c1
widl: Support coclass forward declarations.
2006-07-14 13:32:38 +02:00
Dan Hipschman
d68ec1d325
widl: Fix unterminated comment in generated code.
2006-07-14 13:32:38 +02:00
Alexandre Julliard
645cd6ff50
libs: Get rid of the symlinks for the static libs.
2006-07-11 19:33:48 +02:00
Alexandre Julliard
88c97d7284
.gitignore: Added wildcards to ignore lex and bison output files.
2006-07-10 21:40:49 +02:00
Alexandre Julliard
cc2b3b48e6
Take advantage of the recursive nature of .gitignore for Makefile entries.
...
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Robert Shearman
f627845624
widl: Add support for the builtin constants "TRUE" and "FALSE".
2006-07-07 14:30:34 +02:00
Alexandre Julliard
fdb4c7e986
widl: Fixed syntax of DECL_LINK macro to look more like C code.
2006-06-27 11:51:07 +02:00
Andrew Talbot
0e1e585c73
widl: Write-strings warnings fix.
2006-06-26 12:36:52 +02:00
Thomas Weidenmueller
af994f4e4f
widl: Fix updating the proc offset.
2006-06-19 10:27:24 +02:00
Alexandre Julliard
043fd66907
widl: Use unsigned int instead of size_t to avoid printf format warnings.
2006-06-13 14:13:49 +02:00
Robert Shearman
996c4f1f93
widl: Support coclass forward declarations.
2006-06-07 11:47:21 +02:00
Robert Shearman
d7e7242af6
widl: Fix a typo in the man page.
2006-06-02 10:52:26 +02:00
Robert Shearman
90decb631c
widl: Properly size the return value procformat.
2006-06-02 10:52:23 +02:00
Robert Shearman
6f85f989f5
widl: Only write one procformat string and one typeformat string per file.
2006-06-02 10:52:10 +02:00
Robert Shearman
fa4f94bdd5
widl: Allow some more "reserved words" to be used as identifiers.
2006-05-31 15:47:50 +02:00
Alexandre Julliard
25dc6d912e
widl: Clean output files when aborting on a signal.
2006-05-27 13:23:47 +02:00
Alexandre Julliard
59493b6c33
widl: Get rid of unnecessary inclusion of unicode.h.
2006-05-24 17:41:47 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Jacek Caban
dee8790c69
widl: Don't add importlib if it is already on the list. Remove warning.
2006-05-20 13:58:54 +02:00
Jacek Caban
a7fa3a985b
widl: Added support for importing parent interfaces from importlib.
2006-05-20 13:58:44 +02:00
Jacek Caban
6137e1b60a
widl: Added importlib reading implementation.
2006-05-17 21:02:00 +02:00
Jacek Caban
dce3f2be05
widl: Added RPC_FC_ENUM16 encoding.
2006-05-15 11:49:28 +02:00
Jacek Caban
4812abc247
widl: res50 is number of impinfos. Fix its usage.
2006-05-15 11:49:15 +02:00
Eric Kohl
2c7270e388
widl: Implement 'oldnames' option.
2006-05-05 16:37:42 +02:00
Eric Kohl
b64154882c
widl: Fix a typo.
2006-05-05 16:36:46 +02:00
Jacek Caban
738be2eec3
widl: Fix a typo.
2006-04-21 23:20:09 +02:00
Jacek Caban
8cd409facf
widl: Added importlib parsing code.
2006-04-21 12:46:13 +02:00
Eric Kohl
ff302bfc7a
widl: Implement support for unique pointers to strings.
2006-04-21 11:28:03 +02:00
Robert Shearman
555cf38269
widl: Prevent NULL pointer de-refs on "void *" types.
2006-04-20 15:16:59 +02:00
Robert Shearman
7ca82cd6d2
widl: Ignore [object] attribute on interfaces written to a typelib.
2006-04-18 16:48:39 +02:00
Eric Kohl
bec0993199
widl: Support multiple RPC interfaces per binary.
2006-04-17 12:00:54 +02:00
Eric Kohl
e7134bd4cd
widl: Implement support for unique pointers to arrays.
2006-04-17 11:18:49 +02:00
Mike McCormack
1d453ab551
widl: Add support for VT_I8 and VT_UI8 to msft typelibs.
2006-04-14 10:49:14 +02:00
Eric Kohl
7fb3f12ce5
widl: Implement support for ref pointers to simple structs.
2006-04-10 15:56:50 +02:00
Eric Kohl
83d72a4318
widl: Implement support for ref pointers to arrays of base types.
2006-04-05 10:58:25 +02:00
Robert Shearman
e2ea2b5891
widl: Fix the type offset for generated conformant string calls.
2006-04-03 21:36:06 +02:00
Robert Shearman
837e830a26
widl: There's no need to cast _StubMsg - it's already of the correct type.
2006-03-31 17:38:00 +02:00
Robert Shearman
506404ba09
widl: Only assign variables if not a string and only create a local variable if not a sized parameter.
...
Only assign variables if not a string and only create a local variable
if not a sized parameter. Fixes type mismatches in the generated code
due to differences in the algorithms between creating local variables
and using them.
2006-03-31 17:37:51 +02:00
Robert Shearman
62eb9f4b0c
widl: Initialise the temporary variable to 0 for parameters with more than one level of indirection.
2006-03-31 17:37:35 +02:00
Robert Shearman
d82bb4ade9
widl: Create the correct variable type for parameters with more than one level of indirection.
2006-03-31 17:37:22 +02:00
Robert Shearman
27c3222715
widl: Re-use print_phase_basetype for generating return value marshaling and unmarshaling code.
2006-03-31 17:37:11 +02:00
Robert Shearman
3e065ab342
widl: Move handling of base type marshaling and unmarshaling to a separate function.
...
Move handling of base type marshaling and unmarshaling to a separate
function and improve it to support return values.
2006-03-31 17:37:01 +02:00
Robert Shearman
eb000448a0
widl: Use print_phase_function for printing NdrPointerFree call.
2006-03-31 17:36:39 +02:00
Robert Shearman
04632f6ab7
widl: Add a function to generate the Ndr type calls.
...
- Add a function to generate the Ndr type calls.
- Fix a typo where the aligned buffer was added to itself, rather than
assigned.
2006-03-31 17:36:23 +02:00
Robert Shearman
96f6a22ece
widl: Only write the buffer incrementing code for the marshaling and unmarshaling phases.
...
Only write the buffer incrementing code for the marshaling and
unmarshaling phases - buffer sizing is handled elsewhere and freeing
isn't applicable.
2006-03-31 17:36:06 +02:00
Robert Shearman
226c8f6b52
widl: Output the necessary sizing information for other phases.
...
Output the necessary sizing information for PHASE_BUFFERSIZE and
PHASE_FREE as well as PHASE_MARSHAL. Standardise this rule in a new
function.
2006-03-31 17:35:49 +02:00
Robert Shearman
4a67201b70
widl: Output NULL ref pointer check for pointer levels > 1 too.
2006-03-31 17:35:31 +02:00
Robert Shearman
73ff576554
widl: Fix a GCC warning in the generated client and server code.
2006-03-31 17:35:21 +02:00
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
4edcf2de35
widl: De-reference parameters' types before deciding what to do with them.
...
De-reference parameters' types before deciding what to do with them.
Also dereference string parameters since they are immediately
dispatched to write_string_tfs when the string attribute is detected
without any further processing done on them.
2006-03-31 17:34:48 +02:00
Robert Shearman
4b5386e2cd
widl: Write pointer calls for all non-basetype pointer parameters to functions.
2006-03-31 17:34:38 +02:00
Robert Shearman
91dbc5ae28
widl: Write definitions for MIDL_user_allocate and MIDL_user_free in the header.
...
Write definitions for MIDL_user_allocate and MIDL_user_free in the
header when writing out RPC interfaces to prevent compile failures in
the generated client/server code.
2006-03-31 17:33:28 +02:00
Robert Shearman
071dfb188a
widl: Write out the pre- and postamble for RPC interfaces with no methods.
2006-03-31 17:32:38 +02:00
Robert Shearman
b38cd7ff5f
widl: Output interface defined guard for rpc interfaces too.
2006-03-31 17:32:09 +02:00
Robert Shearman
97d6f7c444
widl: NdrFcShort should be written out instead of NdrShort.
2006-03-31 17:31:44 +02:00
Robert Shearman
bed9fdec8d
widl: Output the numeric equivalent of FC_END, not the string FC_END itself.
2006-03-31 17:31:31 +02:00
Robert Shearman
3ec771a20f
widl: Support references in type_memsize.
2006-03-31 17:31:18 +02:00
Robert Shearman
3db71d9d9c
widl: Only output code for non-object interfaces in client and server.
...
Only output code for non-object interfaces in client and server
generation and convert the while loops into for loops.
2006-03-31 17:31:04 +02:00
Eric Kohl
12d4d9c229
widl: Implement support for ref pointers to strings.
2006-03-30 16:24:35 +02:00
Eric Kohl
1a5c6ef47d
widl: Implement support for pointers to base types.
2006-03-28 14:43:28 +02:00
Eric Kohl
6ad46cc961
widl: Fix base type alignments.
...
Generate aligned marshal and unmarshal code for base type arguments
and return values.
2006-03-23 17:06:25 +01:00
Eric Kohl
1550938a50
widl: Fix format string size calculation.
...
- Move proc format string size calculation from client.c and server.c
to typegen.c.
- Implement type format string size calculation.
2006-03-23 17:06:10 +01:00
Eric Kohl
623f142945
widl: Do not generate code that initializes a binding handle.
2006-03-18 18:06:41 +01:00
Eric Kohl
c7174f9fff
widl: Fix proc offset calculation.
...
A void return type is represented by a FC_END/FC_PAD sequence in the
proc format string. Increment the proc offset by two when a function
returns void.
2006-03-18 18:06:27 +01:00
Eric Kohl
919d14c577
widl: 'unsigned char' and 'byte' are must be distinct types.
2006-03-18 18:06:14 +01:00
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