Commit Graph

57 Commits

Author SHA1 Message Date
Alexandre Julliard 9644d1dcd7 makefiles: Generate a general catch-all dependency on .tab.h files to replace the manually maintained ones. 2010-02-08 20:58:00 +01:00
Matteo Bruni b40bb31995 wpp: Assure if_stack is clean before returning. 2010-02-05 10:06:55 +01:00
Rob Shearman 3fecf9ddcd wpp: Fix expansion of macro bodies following the parsing of a numerical digit.
The current regular expression causes all letters and spaces (among
other characters) following the appearance of a digit to be classed as
a literal, including C identifiers which may need to be expanded.

The expression was intended to catch the remaining characters that
were not covered by the first two rules ([^a-zA-Z0-9'"#/\\\n]+ and
{cident}), but the [^'"#/\\\n] expression caught {cident} as well.
While one solution would have been just to catch the expression that
match [a-zA-Z0-9]* that don't match {cident}, i.e. [0-9][a-zA-Z0-9]*,
in the interests of avoiding unnecessary multiple LITERALs being
generated and then combined during parsing the expression also
includes the first expression, making it
[0-9][a-zA-Z0-9]*[^a-zA-Z0-9'"#/\\\n]*.
2010-01-19 12:43:30 +01:00
Alexandre Julliard 2b5d06afb9 wpp: Reset the line position when parsing a new file. 2010-01-04 13:02:16 +01:00
Michael Stefaniuc e470475151 Revert "Revert "wpp: config.h and wine/port.h should be included first."".
This reverts commit 8e72924541.
Wine now requires a new enough flex version.
2009-12-30 13:36:23 +01:00
Matteo Bruni e132820330 wpp: Clean state on error path. 2009-12-29 11:15:59 +01:00
Matteo Bruni e773c516ba wpp: Add I/O callbacks. 2009-10-13 16:25:43 +02:00
Marcus Meissner 15968fadef wpp: Fixed resource leakages (Coverity). 2009-10-07 12:23:58 +02:00
Matteo Bruni 29af4f9fa8 wpp: Add error management callbacks. 2009-10-06 16:12:39 +02:00
Matteo Bruni 28fb6a24b1 wpp: get_string() now can return NULL, handle it. 2009-10-06 16:12:39 +02:00
Matteo Bruni 9086c59d32 wpp: Handle remaining memory allocation failures. 2009-10-06 16:12:39 +02:00
Matteo Bruni c571d3c1fa wpp: Handle remaining memory allocation failures in ppl.l and ppy.y. 2009-10-02 12:29:56 +02:00
Matteo Bruni b7a2d2da3a wpp: Handle memory allocation failures in tokens management code. 2009-10-02 12:29:24 +02:00
Matteo Bruni 9b61ca1c0f wpp: Manage malloc failure in pp_xstrdup. 2009-10-02 12:27:43 +02:00
Matteo Bruni 026ca4cd00 wpp: Remove the assumption ppy_error calls exit(). 2009-10-02 12:26:06 +02:00
Gerald Pfeifer 3ba9986325 wpp: Add missing #include <ctype.h>. 2008-12-27 20:28:47 +01:00
Rob Shearman 92f5aa0a69 wpp: Check for overflows when parsing integer constants. 2008-10-22 11:57:36 +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
Alexandre Julliard 8e72924541 Revert "wpp: config.h and wine/port.h should be included first."
This reverts commit 33017b0d93.
Some distros still ship flex 2.5.4 unfortunately.
2008-06-30 16:17:35 +02:00
Alexandre Julliard 33017b0d93 wpp: config.h and wine/port.h should be included first. 2008-06-30 12:52:00 +02:00
Rob Shearman 0c694d710e makefiles: Split AR into AR and ARFLAGS. 2008-03-04 20:55:24 +01:00
Rob Shearman dfcd07eba0 libwpp: Include wine/port.h in ppl.l as strcasecmp is used, which isn't available on all platforms. 2008-03-04 12:01:44 +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
Francois Gouget 44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Michael Stefaniuc cc4b9656b9 wpp: Remove redundant NULL check before free(). Found by Smatch. 2007-10-22 12:36:08 +02:00
Alexandre Julliard 49a3d4371d wpp: Don't suppress output from C include files, that's up to the user. 2007-06-28 14:10:42 +02:00
Michael Stefaniuc 173f7bd26c janitorial: Remove remaining NULL checks before free() (found by Smatch). 2006-10-10 12:56:24 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Alexandre Julliard 2d778c5eea wpp: Change the prefix on bison-generated names to avoid the name-prefix directive. 2006-09-12 09:04:55 +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 65516804ee libs/wpp: Specify the bison name prefix directly in the source file. 2006-09-09 11:25:10 +02:00
Dan Hipschman 804993deea wpp: In recursive macro definitions, print the macro name instead of nothing. 2006-07-18 11:35:51 +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
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Bill Medland 427e488ba1 wpp: Support long long constants if configure says long long is available 2006-05-05 18:06:54 +02:00
Alexandre Julliard 36fb66dc79 wpp: Fixed typo in long long constants handling. 2006-04-21 12:44:40 +02:00
Bill Medland 9e73da7340 wpp: Implement long long constant parsing. 2006-04-21 12:44:21 +02: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
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01: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 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
Ge van Geldorp 73227aa568 Treat already preprocessed code just like normal #include'ed code. 2005-02-25 16:19:35 +00:00
Rémi Assailly 88d049d102 Added missing declarations in some headers. 2005-01-11 10:46:58 +00:00
Jacek Caban 392195438d - Fixed infinite loop bug.
- Code cleanup.
2005-01-09 18:01:16 +00:00
Jacek Caban 846a71dc20 Added initializing pp_status.input at begin of wpp_parse. 2005-01-09 16:53:47 +00:00