Commit Graph

28 Commits

Author SHA1 Message Date
PatR
7482be39e8 lev_comp update for older Unix system
Increase the lex paramaters in lev_comp.l and replace use of snprintf
with sprintf in lev_comp.y and lev_main.c.

Also some reformatting for lev_comp.y, but I gave up pretty quickly:
some early tab replacement and adjusting of the spacing for casts.
2016-01-19 16:27:39 -08:00
PatR
48f1c6711e update sys/share/{dgn,lev}_lex.c
The HP C compiler for VMS issued a pair of diagnostics for both *_lex.c
files, about an expression of the form (unsigned_var <= 0) maybe not
being what was really intended, and it was right.  Changing that to
'< 1' would have suppressed the diagnostic but left the bug, which was
in code that performed a subtraction and then checked for a negative
result.  It worked in older flex versions when the variables were
signed, but got broken when they were changed to unsigned (no doubt in
respose to gcc complaining about comparing signed and unsigned in some
other spot where one of them was used).

The bug is in flex's original skeleton, so was inherited by our new
custom skeleton.  I've fixed it in the custom skeleton, which means
that sys/share/*_lex.c became out of date even though util/*_comp.l
remain unchanged.
2015-12-08 14:52:01 -08:00
PatR
c964ae023b sys/share/???_lex.c
Generated with flex 2.6.0 and a new custom skeleton for that version
(which almost certainly won't work with any older or newer version of
flex, but that limitation has no effect on the usefulness of the
generated scanner code).

Function definitions are oldstyle:
  int foo(bar)
    char *bar;
  {...}
rather than ANSI, like nethack's core code.  Advance declarations use
FDECL for prototypes, so should also fit nethack, although the usage
'FDECL(, (arglist))' makes me feel a bit uneasy.  gcc doesn't mind the
omitted first argument but other compilers might not like it.

The system headers (stdlib.h and a few others) that flex has been
insisting on including are gone (with this skeleton).  It starts out
including "config.h" and that header has the responsibility for any
definitions and declarations necessary.  That shouldn't be a big deal
since config.h -> XXXconf.h -> system.h is what we're already relying
on for everything else, but it does need testing for any configuration
that uses sys/share/{dgn,lev}_{lex,yacc}.c.

I'll be checking the skeleton into the NHinternals repository after
adding some documentation, but I'm wondering whether it should really
become part of the source distribution.
2015-12-05 23:02:35 -08:00
nhmall
6cfa4bbbe5 lev_yacc and lev_lex from master 2015-12-04 07:57:35 -05:00
nhmall
eed4549f53 'pull' prebuilts from master into release branch 2015-12-04 07:46:21 -05:00
nhmall
786ac8abe6 'Merge' prebuilts from master 2015-12-03 04:23:53 -05:00
Pasi Kallinen
c20638938e Update precompiled lev_comp lex and yacc files 2015-12-02 18:33:44 +02:00
Pasi Kallinen
b2ab8f2504 Update precompiled lev_comp lex and yacc files 2015-11-15 09:09:45 +02:00
Derek S. Ray
a65c568e49 New precompiled versions of these 2015-05-26 22:54:55 -04:00
Sean Hunt
1c081b1647 Remove stale version control lines. 2015-05-25 09:21:31 +09:00
Derek S. Ray
6d232df8ab update pre-built versions of these 2015-05-09 14:47:46 -04:00
Sean Hunt
97d6fade74 Reformat all C files.
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!
2015-05-09 13:43:16 -04:00
karnov
2a907f894e Version number increment 2015-05-06 22:04:27 -04:00
Pasi Kallinen
c6e9838615 Update precompiled lex and yacc files 2015-04-10 19:45:04 +03:00
nhmall
660534389e a warning bout lc_error
lev_comp.l(310) : warning C4013: 'lc_error' undefined; assuming extern returning int
2015-04-05 09:26:01 -04:00
Pasi Kallinen
e554cba0ac Update precompiled lex/yacc files 2015-03-21 20:37:44 +02:00
Derek S. Ray
7f03ee4216 Changes for Win32; update precompiled files
Also fix Orctown probabilities; fixed support for snprintf;
update Win32 makefile to allow level compiler use

Conflicts:
	win/win32/levstuff.mak
2015-03-20 15:14:31 +02:00
nethack.rankin
394f27645a sync sys/share/{dgn,lev}_{lex,yacc}.c, take two (trunk only)
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.
2009-05-11 22:53:51 +00:00
nethack.rankin
28a8f7d858 sync sys/share/{dgn,lev}_{lex,yacc}.c 2009-05-07 00:58:22 +00:00
nethack.rankin
2f1882b24f lex sync (trunk only)
Propagate recent util/*_comp.l changes to sys/share/*_lex.c.
2008-05-08 02:18:55 +00:00
nethack.allison
e9b022d579 housekeeping: mark trunk sources 3.5 (misc) 2005-01-02 17:21:18 +00:00
nethack.rankin
7ad89fbbdd lex update
This is a case where a one-line change to the scanner source produces
a large diff in the generated C code.
2003-10-23 06:30:43 +00:00
nethack.rankin
e835e2f420 lev_comp,dgn_comp vs CRLF style input
Allow the special level and dungeon compilers to handle input
files which have CR+LF delimited lines.  Apparently Cygwin doesn't
convert MSDOS style line ends into newlines the way stdio should
do for text I/O.  The resulting unexpected CR characters result in
syntax errors.

     And explicitly using '\n' on both the lex and yacc sides of
MAP processing allows removal of the old NEWLINE hack for Mac MPW.
It won't matter what numeric value that character escape sequence
has internally.
2002-03-28 01:37:39 +00:00
nethack.rankin
1f6484473f resync generated files 2002-02-05 22:12:41 +00:00
nethack.allison
742e1e8c90 3.3.2 to 3.4.0 2002-02-04 16:11:00 +00:00
nethack.rankin
daf7cda0ee generated lex output 2002-01-22 09:27:01 +00:00
nethack.rankin
fbcf710621 update lex output 2002-01-13 04:16:04 +00:00
jwalz
db70651cec *** empty log message *** 2002-01-05 21:05:57 +00:00