Author: muggenhor
Date: Mon Apr 28 02:14:46 2008
New Revision: 4832
URL: http://svn.gna.org/viewcvs/warzone?rev=4832&view=rev
Log:
Merged revisions r4822:4831 into the 2.1 branch via svnmerge from trunk
........
r4822 | muggenhor | 2008-04-27 17:59:03 +0200 (zo, 27 apr 2008) | 4 lines
* Rename function levError to lev_error (bison/yacc #defines yyerror to
lev_error)
* In function lev_error use ASSERT always (even in non-debug builds as it
will still output a message there)
* Don't use a single function levGetErrorData for retrieving the line no &
piece of text being parsed, instead use two functions levGetErrorLine and
levGetErrorText
........
r4823 | muggenhor | 2008-04-27 18:48:14 +0200 (zo, 27 apr 2008) | 4 lines
Change functions levSetInputBuffer and levParse:
* Make them const correct
* Pass the size parameter as a size_t (as it's a memory/buffer-size we're
passing here)
........
r4824 | muggenhor | 2008-04-27 19:53:57 +0200 (zo, 27 apr 2008) | 1 line
Lets not #include the Doyxgen generated files from a previous run in the
Doxygen docs for the current run (specifically search.php)
........
r4825 | muggenhor | 2008-04-28 01:21:19 +0200 (ma, 28 apr 2008) | 2 lines
* Remove constant MULTI_TYPE_START and replace it by an enumeration value:
LDS_MULTI_TYPE_START
........
r4826 | muggenhor | 2008-04-28 01:25:36 +0200 (ma, 28 apr 2008) | 2 lines
Oops! Apparently my search&replace regexp for r4825 contained a small typo
causing a syntax error: fixed it
........
r4827 | muggenhor | 2008-04-28 01:30:02 +0200 (ma, 28 apr 2008) | 2 lines
r4826 didn't yet fix all, apparently there was commented out code changed as
well
........
r4828 | muggenhor | 2008-04-28 01:44:40 +0200 (ma, 28 apr 2008) | 4 lines
* #Include from the local directory (i.e. remove the "src/" part from some
#include directives)
* Line out fix: use spaces, not tabs
* Use the yy* macros provided by bison/flex instead of prefix*
........
r4829 | muggenhor | 2008-04-28 01:57:22 +0200 (ma, 28 apr 2008) | 2 lines
Change global var levelLoadType to a static one
........
r4830 | muggenhor | 2008-04-28 02:04:40 +0200 (ma, 28 apr 2008) | 13 lines
Add a new bison/yacc parser: level_parser.y:
* Change level_lexer.l:
* Use lev_lval to return token-data in (instead of global vars)
* Use strdup() to return strings to the parser and let the parser take care
of memory clean-up (through Bison's %destructor directive)
* Use the token constants as generated by Bison (instead of our own custom
enum)
* Rip out the custom state machine-like level parser from levels.c (was
function levParse)
* Remove all global variables associated with this parser
* Remove the LP_* enum which was only used by this parser
* Move function lev_error to level_parser.y
* The new parser provides more verbose error messages if parsing fails
NOTE: The previous state machine-parser actually maintained state in two
variables, so it was rather overly complex (quadratic complexity if you like)
........
r4831 | muggenhor | 2008-04-28 02:11:37 +0200 (ma, 28 apr 2008) | 1 line
Update the Code::Blocks and MSVC projects for the addition of the level
parser in r4830
........
Added:
branches/2.1/src/level_parser.y
- copied unchanged from r4831, trunk/src/level_parser.y
Modified:
branches/2.1/ (props changed)
branches/2.1/Doxyfile
branches/2.1/src/ (props changed)
branches/2.1/src/Makefile.am
branches/2.1/src/Makefile.raw
branches/2.1/src/level_lexer.l
branches/2.1/src/levelint.h
branches/2.1/src/levels.c
branches/2.1/src/levels.h
branches/2.1/warzone2100.cbp
branches/2.1/win32/Warzone2100.vcproj
_______________________________________________
Warzone-commits mailing list
[email protected]
https://mail.gna.org/listinfo/warzone-commits