Commit graph

222 commits

Author SHA1 Message Date
Bill Currie
00d409e80c fix constant folding for | 2001-07-19 03:00:35 +00:00
Bill Currie
09ae07f64e make --enable-cpp work when new-parser is left to default (which is on) 2001-07-19 03:00:08 +00:00
Bill Currie
47a6f2c9b5 pr_debug.c:
capitolise CRC and add a \n to the message
sv_progs.c (both nq and qw):
	don't bother checking the progdefs.h crc: it's just not needed any more
pr_imm.c:
	use r instead of rep when checking the hash tables.
main.c (quaq):
	make developer work and set com_filesize (otherwise, progs crc doesn't
	get set properly (com_filesize, not developer:))
2001-07-18 21:28:41 +00:00
Bill Currie
5c31fbf366 fix debug crc generation 2001-07-18 20:31:55 +00:00
Bill Currie
3eedd3d8fc more tests 2001-07-18 19:04:47 +00:00
Bill Currie
144eba8b3c it seems that the qcc variants that strip global defs only strip the name, so
don't bother fixing missing defs (but /do/ complain if any are missing). I
suspect full def striping would have seriously broken things.
2001-07-18 18:03:53 +00:00
Bill Currie
152114f1cd works now, though I don't imagine save games will work too well :) 2001-07-18 17:59:16 +00:00
Bill Currie
10ad8bebbd Make files.dat actually useful. I really dislike the hardcoding, but it /is/
useful. Also, fix a bug in PrecacheModel where it was checking MAX_SOUNDS and
numsounds instead of models.
2001-07-18 17:23:42 +00:00
Bill Currie
c9af1575d3 fix emit_assign_expr to emit an explicit assignment statement whenever
emit_sub_expr returns a temporary def. this fixes a = b = c; expressions when
entities are involved.
2001-07-18 16:33:31 +00:00
Bill Currie
d6c2943ae3 defs.c:
use the right hash table
fix_globals.c:
	clean up the math
2001-07-18 15:42:08 +00:00
Bill Currie
9d50fea8e5 more tests 2001-07-18 06:37:59 +00:00
Bill Currie
098305d649 fix (expr_type1 && expr_type2). this involed type completing expressions :/ 2001-07-18 06:37:14 +00:00
Jeff Teunissen
ed0d1d8ba8 *** empty log message *** 2001-07-18 05:09:37 +00:00
Bill Currie
f2731a7314 add cse opts 2001-07-18 02:08:32 +00:00
Bill Currie
c298d4919c actually do some fixups, but it segs atm :/ 2001-07-18 00:26:14 +00:00
Bill Currie
36af2c6078 check for missing defs (and use the new quakefs subversion mechanism) 2001-07-17 22:15:41 +00:00
Jeff Teunissen
3e1bbd47df Add a TODO file for qfcc 2001-07-17 21:51:10 +00:00
Bill Currie
3488946bb5 slightly more interesting output while I procrastinate doing the hard bits 2001-07-17 20:33:17 +00:00
Bill Currie
c50793b54a beginnings of a progs re-deffer tool to take care of stupid qc compilers that
strip def names.
2001-07-17 20:05:57 +00:00
Jeff Teunissen
af366764de C preprocessor support for qfcc. Depends on the new parser. --enable-cpp
to activate.
2001-07-17 05:02:34 +00:00
Bill Currie
5d5d3f1416 well, that explains the loss of line number onfo on return statements :P 2001-07-16 03:53:45 +00:00
Bill Currie
c749bc77be add *.sym 2001-07-15 02:58:22 +00:00
Bill Currie
cb80800732 fix debug line numbers for if and while. still `losing' them for return for
some reason.
2001-07-15 01:51:01 +00:00
Bill Currie
a0ba8e534c s/IMMEDIATE/.imm/ for name of immediate defs. the latter is both shorter and
impossible to generate from qc
2001-07-15 01:50:10 +00:00
Bill Currie
9fa7ecd14d line number tests for while 2001-07-15 01:49:24 +00:00
Bill Currie
6e06ecc461 debug testing 2001-07-14 23:52:56 +00:00
Bill Currie
2818d720c2 move the full info opcocde table from qfcc to gamecode (<KURGON>There can be
only one!</KURGON>:) and use the table in PR_PrintStatement. This means that
qfcc now links against libQFgamecode as well as libQFutil
2001-07-14 02:34:16 +00:00
Bill Currie
ae9ee57666 change the type of opcode->type to etype_t, clean up the resulting mess, and
rename all of the opcodes to (eg) mul.f instead of MUL_F
2001-07-14 01:52:05 +00:00
Bill Currie
6c91ee29f0 fix a missed debug test 2001-07-14 01:47:45 +00:00
Bill Currie
7acbb3a0ea helps if I remember this :/ 2001-07-14 01:16:07 +00:00
Bill Currie
64e50e1ebd Basic debug info generation, just line numbers and local defs for each
function.
2001-07-14 01:15:40 +00:00
Bill Currie
eae97539c2 beginnings of debug info for progs 2001-07-13 06:08:50 +00:00
Bill Currie
7fce7e53ff more test (need to find a way to do automated tests, I think) 2001-07-12 23:11:40 +00:00
Bill Currie
8bbef35197 fix `a = b = b + c;' (probably d + c, too). Caused by forgetting to emit
an assignment for `a ='.
2001-07-12 18:56:43 +00:00
Bill Currie
ecff96258f cmd.[ch]:
api change: Cmd_Args () now takes a parameter inidcating which arg to
	start at for grabbing the un-parsed command line
qw/source/sv_ccmds.c:
	implement kk's tell command and user name matching (though # is used for
	the wildcard and it's still case sensitive)
everything else:
	adjust for the new Cmd_Args protype
2001-07-10 18:25:54 +00:00
Bill Currie
8000c86e35 /much/ better type mismatch error reporting
eg:
./main.qc:55: type mismatch: float == entity
2001-07-09 18:17:04 +00:00
Bill Currie
43ba9affaa remove the gcc 2.96 test 2001-07-09 17:12:09 +00:00
Bill Currie
f6575ca262 more testing 2001-07-07 02:38:40 +00:00
Bill Currie
1db6225ae7 make - - - - -2 work 2001-07-06 04:54:08 +00:00
Bill Currie
4673d701c9 fix the conflicts caused by -ve constants 2001-07-06 04:29:12 +00:00
Jeff Teunissen
35f5118803 warning/error message cleanups. Well, at least *I* think they make more
sense. :)
2001-07-06 02:43:39 +00:00
Jeff Teunissen
605df6ebb6 Change the bashism $() back to `` 2001-07-05 21:15:08 +00:00
Bill Currie
b1f264b203 using qfpreqcc is now vewy vewy qwiet ('e's 'unting wabbits) 2001-07-03 21:17:02 +00:00
Bill Currie
05db0ed9d0 more format attributes 2001-07-03 20:56:01 +00:00
Bill Currie
1edf1e0b39 format checking for error and warning + needed fixes
try to give name of object when calling non-function
2001-07-03 20:53:49 +00:00
Bill Currie
ccc00b0608 fix segs on ondeclared identifiers 2001-07-03 20:42:07 +00:00
Bill Currie
8f04a482f0 #include foo/bar.qc now works 2001-06-29 16:14:47 +00:00
Bill Currie
1e6fc51421 time to enable the new parser by default. 2001-06-29 00:12:11 +00:00
Bill Currie
5a019e9321 don't need to print statement addresses any more 2001-06-29 00:05:34 +00:00
Bill Currie
f2bb7ace41 add an option (--warn=error) to treat warnings as errors 2001-06-28 23:15:10 +00:00