Commit Graph

61 Commits

Author SHA1 Message Date
Alexandre Julliard
ced7d134c7 wpp: Build with -fPIC to allow libwpp to be used from dlls. 2010-03-30 15:52:53 +02:00
Alexandre Julliard
bd94f95938 wpp: Get rid of wpp_parse_temp, temp file management is better left to callers. 2010-03-30 15:34:29 +02:00
Alexandre Julliard
fbef7217b9 makefiles: Remove the no longer needed explicit dependencies for bison files. 2010-03-16 13:28:24 +01:00
Alexandre Julliard
bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
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