85 Commits

Author SHA1 Message Date
Alexandre Julliard
cc02e15220 widl: Add support for #pragma directives. 2013-11-04 17:41:11 +01:00
Kai Tietz
499f05433a widl: Add RT's namespace keyword to scanner, and parser. 2013-08-19 12:53:12 +02:00
Alexandre Julliard
fc3114ca80 widl: Don't free the input file name since it's stored in various places in the location info. 2010-12-23 12:50:52 +01:00
Alexandre Julliard
3991b05746 widl: Add progid, threading and vi_progid attributes for coclasses.
This is a Wine extension, modelled after the corresponding attributes
supported by Visual C++.
2010-12-02 13:14:50 +01:00
Alexandre Julliard
537773fbf4 widl: Add some more attribute keywords. 2010-10-21 21:23:36 +02:00
Alexandre Julliard
4d55592540 widl: Move temp file management from wpp to widl. 2010-03-30 15:34:12 +02:00
Alexandre Julliard
a83563aa40 widl: Long constants must be 32-bit on all platforms. 2010-03-26 11:42:28 +01:00
Rob Shearman
8a8fff6415 widl: Return a pointer to the correct part of the string from the lexer for WSTRQUOTE tokens. 2010-03-23 17:28:54 +01:00
Rob Shearman
39b3a57b3d widl: Fix symbol was not declared and using plain integer as NULL pointer sparse warnings. 2010-01-22 12:17:56 +01:00
Rob Shearman
d9b83e8bb2 widl: Add support for character constants in expressions. 2010-01-19 12:43:31 +01:00
Rob Shearman
97d5f3401d widl: Add support for varargs functions. 2009-11-09 20:42:27 +01:00
Rob Shearman
4339f9edfb widl: Implement __int3264 keyword. 2009-11-09 20:36:19 +01:00
Huw Davies
ab32b3df4d widl: Add support for parsing the annotation attribute. 2009-10-26 14:05:29 +01:00
Rob Shearman
b7dd838136 widl: Remove the single keyword and type.
It isn't valid in MIDL or the FreeDCE IDL compiler, nor does it appear
in the DCE/RPC or C99 specs.
2009-03-05 18:39:02 +01:00
Huw Davies
81bab55a94 widl: Include errno.h. 2008-10-20 22:33:40 +02:00
Rob Shearman
cb3ea6843c widl: Check for overflow when parsing integer constants. 2008-10-18 19:33:18 +02:00
Alexandre Julliard
28a2179dd6 Add noinput directive to all lex files to avoid a compiler warning. 2008-07-07 12:31:33 +02:00
Francois Gouget
d2364d5d27 Add a comment warning when a table must be kept sorted for later use with bsearch(). 2008-05-06 16:11:09 +02:00
Rob Shearman
e71219e66e widl: Add the parsing of storage classes into declaration-specifiers.
Support the static and register keywords.

This consolidates externdef and constdef rules into one declaration rule.
2008-04-30 16:59:47 +02:00
Rob Shearman
e35c79efbf widl: callback, code, comm_status and in_line are attribute names, not keywords. 2008-04-30 11:32:08 +02:00
Rob Shearman
4f8f89e6bb widl: Add support for "inline" on function definitions.
Fix applying calling convention to function type.
2008-04-30 11:31:21 +02:00
Rob Shearman
0cb73cef0b widl: Accept integer constant suffixes in the lexer. 2008-04-28 13:28:16 +02:00
Rob Shearman
62a6475593 widl: Support hex digits that use an uppercase 0X prefix. 2008-04-28 13:28:16 +02:00
Rob Shearman
66fa9a714e widl: Create a statement object for import statements.
Move the writing of include directives into the generated header into 
header.c.
2008-04-25 12:10:34 +02:00
Rob Shearman
33c891e694 widl: Add support for string literals and wide-string literals in expressions. 2008-04-25 12:10:24 +02:00
Rob Shearman
58be89230e widl: Allow NULL to be used in expressions. 2008-04-24 22:31:47 +02:00
Rob Shearman
b81904b8ee widl: Don't free input_name in pop_import as we keep pointers to it in the var_t type now. 2008-04-22 13:04:24 +02:00
Rob Shearman
cc3682cf12 widl: Add support for comparison, exclusive or, logical not and positive operators in expressions. 2008-04-22 13:04:03 +02:00
Rob Shearman
03d5017416 widl: Add support for "->" and "." operators in expressions. 2008-04-21 13:36:19 +02:00
Dan Hipschman
976f570f61 widl: Fix a mistake in an ordered list (keywords). 2008-04-03 11:30:08 +02:00
Rob Shearman
35ba23bd48 widl: Support __fastcall and __pascal calling conventions.
Support the synonyms for these and existing calling conventions.
2008-04-02 19:53:42 +02:00
Rob Shearman
772f3af9f0 widl: Be more strict about where semicolons can appear in IDL files.
In particular, don't allow them after cpp_quote and without a statement.

Update the rules for importlib, library definition, dispinterface 
definition, interface definition, coclass definition and module 
definition to optionally allow a semicolon postfix.

Call pop_import from the parser instead of the lexer to ensure that 
pop_import is only called after the last statement in the imported file 
has been parsed.
2008-04-01 19:10:43 +02:00
Gerald Pfeifer
92015ee4ed widl: Include <unistd.h> for prototype of unlink(). 2008-02-25 11:54:16 +01:00
Alexandre Julliard
41fbacefa1 Avoid the nounistd option that doesn't exist on older flex, define YY_NO_UNISTD_H instead. 2008-02-19 15:42:49 +01:00
Rob Shearman
878ea5d2e2 Add the nounistd option to all lex source files. 2008-02-19 13:39:25 +01:00
Rob Shearman
454e489c2f widl: Don't search for a import file name with a path in the include directories for compatibility with MIDL. 2008-02-04 11:49:07 +01:00
Rob Shearman
15af19c6ec widl: Add support for strict context handles. 2008-01-07 12:32:21 +01: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
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
Dan Hipschman
cfa5457270 widl: Allow quoted UUIDs. 2007-10-09 17:52:45 +02:00
Alexandre Julliard
40dda77c52 widl: Added support for floating-point constants. 2007-07-17 14:12:18 +02:00
Alexandre Julliard
77292a8c82 widl: 'control' is an attribute not a keyword. 2007-02-19 16:40:34 +01:00
Alexandre Julliard
6b808bafe0 widl: Rename parser states to uppercase to avoid conflicts. 2007-02-08 11:55:35 +01:00
Alexandre Julliard
24ded9e69a widl: Only recognize attribute keywords inside an attribute list. 2007-02-07 17:50:17 +01:00
Andrew Talbot
9c6c8b178a widl: Cast-qual warning fix. 2006-10-10 19:33:06 +02:00
Dan Hipschman
53a2819286 widl: Fix warning about unused structure field in lexer. 2006-09-14 11:39:37 +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
Dan Hipschman
12a9dfd62f widl: Support SAFEARRAY(type) syntax. 2006-07-25 11:21:41 +02:00
Robert Shearman
f627845624 widl: Add support for the builtin constants "TRUE" and "FALSE". 2006-07-07 14:30:34 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00