This regenerates the scanner and parser files. I'm checking them
into master only. If they work for everyone using them, they can be
merged into 3.6.0.
dgn_yacc.c: I reconstructed our 3.4.3 patch for byacc 1.9 (the original,
not the one used to create the set of files being replaced here) by
comparing dgn_yacc.c made with vanilla byacc and dgn_yacc.c from 3.4.3.
(Unlike lev_comp.l, dgn_comp.l has hardly changed at all.) There's no
dynamic memory use in that version, so declarations for malloc and/or
realloc and/or inclusion of <stdlib.h> aren't an issue. The fixed size
stack it uses is big enough for 'make update' to run to completion.
lev_yacc: I built it with [modified] byacc to replace one built with
bison. sys/share/lev_comp.h was from byacc, not bison, so something has
gotten screwed up recently.
*_lex.c: I used the same version of flex (2.5.37) as the one used to
create the set being replaced, so build prospects are the same. But I
used -L to suppress #line directives and my Makefile has an extra 'sed'
pass that strips trailing spaces, producing extra bands in the diff.
*_comp.h: They're the same as far as git is concerned (ie, only the
file creation/modification dates changed), so there's no update.
I'll push a formatting guide at some point. There may still be
outstanding changes, but please feel free to resolve those as you arrive
a them.
To the best of my knowledge, there is no changes to the actual code
content, but the formatter does have the occasional bug. If you run into
an issue, please fix it!
cvs admin -ko sys/share/*_*.c to suppress $Date$ and $Revision$ expansion,
reverting to the text checked a few days ago.
cvs commit -f sys/share/*_*.c to trigger this mail; you'll need cvs update
to get the actual text.
Suggested by <Someone>: in the special level compiler, support
"random" in addition to "open" and "closed" for a drawbridge's inital
state. Drawbridge shares code with door, so the necessary parsing was
already present. This just treats random as valid for drawbridge instead
of explicitly rejecting it, and makes the special level loader process it.
He also suggested that the two drawbridges on the bottom level of
the Valk's quest be changed from open to random, but this patch doesn't
go that far. I think it's a good idea, but since the player can't use a
musicial instrument on those bridges, this has more impact on game play
than it might at first seem. I don't really want to see Valkyries be
required to use magic for occasions where both bridges start out closed.