Commit Graph

19 Commits

Author SHA1 Message Date
Brendan Shanks f214d0c44e wrc: Support function macros where varargs are the only argument.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 22:10:50 +02:00
Alexandre Julliard f4af3134de makefiles: Specify the bison prefix directly in the source files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard 13ec7952e0 configure: Assume that unistd.h is available on Unix.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 18:43:51 +01:00
Alexandre Julliard 8d6c33c3bf include: Remove wine/port.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Francois Gouget c35b41a3f2 wrc: Add a trailing linefeed to a couple of error() messages.
Unlike most of the other wrc error functions, error() does not append a
trailing linefeed.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-20 18:58:29 +02:00
Alexandre Julliard 55701c6672 tools: Add a helper function to create temp files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-29 21:38:11 +02:00
Alexandre Julliard 1e173eaa8c wrc: Use asserts instead of explicit internal error.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-24 21:55:18 +02:00
Alexandre Julliard 04ae435f89 wrc: Use the standard memory allocation wrappers in the preprocessor.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-24 21:55:18 +02:00
Alexandre Julliard b69ce3472d wpp: Move the preprocessor code into wrc.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-24 21:55:18 +02:00
Alexandre Julliard b7d3c79beb Split the C preprocessor from wrc into a separate library.
Prefixed exported functions by 'pp' to avoid namespace conflicts.
2002-07-16 02:33:10 +00:00
Alexandre Julliard 7cae558bdc Removed some more trailing whitespace. 2002-06-01 02:55:48 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Michael Stefaniuc 690d24f28e Replaced MAX with max and deleted definition of MAX. 2001-12-19 18:47:46 +00:00
François Gouget 1425941e29 Fix the #include order for config.h.
Add #include "config.h" directives where needed.
2001-11-06 20:57:11 +00:00
Maciek Kaliszewski d7c69a5d5f Added support for RCINCLUDE directive. Now wrc ignores everything
except preprocessor directives from included *.h *.c files.
2001-06-04 03:09:11 +00:00
Bertho Stultiens 24b5050a7f - Bugfix: Macro expansion of strings would assert an internal error
or a segfault due to a lacking '\0' in the expansion.
- Bugfix: Prevent buffer overflow in reallocation of macro expansion
  buffers.
- Bugfix: Wrc's version information was not passed as numerical to the
  preprocessor due to an error in the definition of the macro.
- Relaxed the newline constraint in global LANGUAGE statements, which
  was introduced in version 1.1.3, so that some fancy preprocessor
  constructs can work.
- Removed the gcc-style #line handling from the resource-parser to the
  resource-scanner so that it is possible to include files at any stage
  of the source, independent of the parser-state.
- Bugfix: Stringtables were not correctly searched for duplicates
  because the language comparison disregarded the sublanguage.
- Eliminated a repetitive warning when writing stringtables with zero
  length string entries. These are perfectly valid (but make no sense:-).
  Warnings are now only generated during parse in pedantic mode.
2000-07-08 11:49:29 +00:00
Bertho Stultiens 661a94033e - Bugfix: Corrected "off by one" error in the linenumber while parsing
resource.
- Bugfix: A segfault would occur if messagetables were parsed without
  memory options attached. Also added buffer-overflow safeguard while
  converting between byteorders.
- Finished remapping usertype resources onto standars types by tricking
  the parser into accepting a different token. The remapping can be
  disabled with a new commandline option '-m'.
- Resolved some warning about chars used as index on SGI O2 machine
  (the ctype isXXX() routines are macros there).
2000-06-13 03:37:56 +00:00
Bertho Stultiens c107f714d0 - Implemented MESSAGETABLE resource type.
- Usertype resources that cause a type-clash with defined resources
  are now detected and a warning is generated. Some types should be
  rerouted through other code so that they will be (re-)interpreted.
- Bugfix: Line-continuation in strings in resources include a newline.
  This `feature' got deleted with the builtin preprocessor, but has been
  put back into place (see last changes comment from version 1.1.0).
- Bugfix: The preprocessor now correctly will see "\\\r\n" as a line-
  continuation.
- Bugfix: Assemblers on some platforms do not use 16bit quantities
  for `.word'. This directive is now changed into `.short'.
- All types that accept inline data definitions (a la RCDATA) now
  also accept a file specification. This unifies the structure a bit.
2000-06-08 00:38:47 +00:00
Bertho Stultiens 27337af65c - Implemented a new preprocessor that is (nearly) ANSI-C compliant. The
old parser has been stripped from the old preprocessor-code which
  cleaned up both resource-scanner and -parser.
- Standard defines have been introduced (see README.wrc)
- Both preprocessor- and resource-scanner have been optimized slightly
  so that no backing up is required (one char lookahead is enough).
- Filename-scanning has been cleaned up, though not perfect yet.
- User-type resources are compatible now.
- Line-continuation in strings is corrected so that it does not
  introduce a newline in the output.
2000-05-01 20:05:58 +00:00