Commit graph

324 commits

Author SHA1 Message Date
Bill Currie
16c334b6b9 uninit var detection seems to work for if and if else 2001-10-19 03:22:04 +00:00
Bill Currie
3572a6be28 change def_list from def_t ** to hashtab_t * and comment out some debug code 2001-10-19 00:45:56 +00:00
Bill Currie
237d238a65 beginnings of "if" uninitialized variable support. doesn't make any
difference yet
2001-10-18 23:06:39 +00:00
Bill Currie
5ca785e7e8 uninitialized variable detection. not perfect (lots of false negatives, but
fewer than before;) but prozac isn't giving any false positives.
2001-10-18 20:05:26 +00:00
Bill Currie
96e4e1a232 the beginning of unititialized var detection. first victim: functions.
--undefined-function-warning is now --no-undefined-function-warning and
the default is to detect called but undefined functions.
2001-10-18 17:41:22 +00:00
Bill Currie
952f029e6d rename def_t.initialized to def_t.constant 2001-10-18 17:15:05 +00:00
Bill Currie
85834ab8c3 handle a couple of missed ex_nil cases 2001-10-17 18:36:19 +00:00
Bill Currie
79ac85b54f type checking now works much better and there is now a NIL builtin constant
which can be assigned (/only/) to anything.
2001-10-17 07:45:37 +00:00
Bill Currie
2d068c0745 massive windows.h and WIN32 cleanup. 2001-10-16 21:40:45 +00:00
Bill Currie
40489cb166 Config.h.in is generated, so remove from cvs 2001-10-14 06:10:45 +00:00
Jeff Teunissen
69c558d78c Vector class for Forge. Don't know if we need it, but it helped me to
grok vectors.
2001-10-14 05:57:38 +00:00
Jeff Teunissen
f7b0227299 This is all seriously broken, but I'm committing it so that it can be
worked on by other people as well. :)
2001-10-14 05:55:21 +00:00
Bill Currie
c8e1e7942a correct type error checking for vectors vs floats 2001-10-12 03:58:22 +00:00
Jeff Teunissen
510ce73d65 A Gorm file for the Forge interface. 2001-10-10 01:49:57 +00:00
Bill Currie
356492f683 don't convert float test epxressions for --id and fix a typo in an error
message for !expr
2001-10-06 04:48:52 +00:00
Ragnvald Maartmann-Moe IV
2080ae7db6 Fix stamp ignorance. 2001-10-05 19:42:17 +00:00
Bill Currie
922895ed99 comment out unused var 2001-10-02 19:33:31 +00:00
Bill Currie
67635e9dd0 fix a d'oh in the param/return type checking 2001-10-02 19:03:28 +00:00
Bill Currie
dcb51dc586 expr.h:
get_type and extract_type prototypes and add extern for type_names
emit.c:
	use extract_type instead of get_type
expr.c:
	get_type now returns the type pointer rather than the qc type enum.
	extract_type uses get_type to return the qc type enum.
	make type_names global
	use get_type instead of ex_expr/ex_def to cover more cases
	clean up function call/return processing as a result of get_type
pr_opcode.c:
	use opcode_priority_type_table_ab when var_c is null and a minor
	cleanup in PR_Opcode_Find
2001-10-02 18:55:52 +00:00
Bill Currie
1a3a599ab3 ignore gas2masm 2001-09-28 07:33:46 +00:00
Bill Currie
f442e0d980 make gendefs put its rcsid into its generated files 2001-09-28 07:27:13 +00:00
Bill Currie
7407e4f1b7 and some more 2001-09-28 07:09:38 +00:00
Bill Currie
bcd54926b4 make compile with gcc 3.0 2001-09-28 03:58:51 +00:00
Bill Currie
83db5c0194 fix --with-qf 2001-09-28 03:47:22 +00:00
Jeff Teunissen
cd5f322cc1 Move along, nothing to see here... :) 2001-09-26 03:39:44 +00:00
Bill Currie
06da30ac89 mingw build fixes again (including mostly working in sid: got some link issues) 2001-09-25 06:18:30 +00:00
Bill Currie
c74fc1c0df make the unused var warning like gcc's 2001-09-24 17:51:15 +00:00
Bill Currie
2447983464 try three. this should work 2001-09-24 03:23:44 +00:00
Bill Currie
998855402c try two 2001-09-24 02:48:09 +00:00
Bill Currie
5f9a3d9617 try to make --with-qf work while configuring 2001-09-24 02:38:28 +00:00
Bill Currie
789a11d2d8 don't print the file or line number for "warnings treated as errors" 2001-09-23 04:08:28 +00:00
Bill Currie
2054ec016a fix a slew of false positives with unused var checking 2001-09-23 04:08:03 +00:00
Bill Currie
7aec6e253a unused local variable detection 2001-09-22 23:41:47 +00:00
Bill Currie
9f715ae9f8 more small old-parser cleanups 2001-09-15 20:31:17 +00:00
Bill Currie
3557d375f3 add better scoping to TODO even though I'm likely to do it soon 2001-09-13 20:34:08 +00:00
Bill Currie
d7675ada7a move the particle count multiplication out of the renderer and into the clien
(for blood and gunshot, anyway).
2001-09-06 05:41:15 +00:00
Jeff Teunissen
896d304ac9 New man page for qfcc -- doesn't match the program yet, I'm committing
it for comments.
2001-08-31 16:43:26 +00:00
Bill Currie
805c1bd242 foo (snafu, bar (baz)) no longer uses a temp for bar's return value 2001-08-24 23:22:02 +00:00
Bill Currie
f16886b7f1 missed a need to increment the users of the temp for chained functions 2001-08-24 22:29:06 +00:00
Bill Currie
cee850e499 remove debug 2001-08-24 22:03:50 +00:00
Bill Currie
8166ee7bfb fix a whitespace snafu (gee, vim can be a pain somethings) 2001-08-24 21:57:07 +00:00
Bill Currie
ea451ab02d Remove unnecessary temps from function return values. This has one
*/CRITICAL/* implication: DO NOT /EVER/ RELY ON EVALUATION ORDER. This
isn't /really/ that bad: evaluation order will be consistent for similar
expressions, but for (eg) foo() + bar()*2, bar will be called first.
2001-08-24 21:47:52 +00:00
Bill Currie
08f73bed78 better code generation for foo(bar(baz)). foo(snafu,bar(baz)) isn't optimal
yet, but the code is at least correct
2001-08-24 21:14:04 +00:00
Bill Currie
eeec89e6ba don't put function args in temps when not needed. still need to take care
of the return value, but that can possibly be taken care of in an optimiser
pass.
2001-08-24 05:40:48 +00:00
Bill Currie
0eda635483 fix temp reference counting on function call args 2001-08-22 23:21:47 +00:00
Bill Currie
4c48851096 fix a buffer overflow in new_label_expr
use reference counting for temp defs and call PR_FreeTempDefs at the end
of emit_sub_expr as well as emit_expr.
fix a (relatively harmless) bug in type processesing of foo.bar =
2001-08-22 21:55:01 +00:00
Bill Currie
a32384f16c report the name of the function using the most locals 2001-08-21 18:23:21 +00:00
Bill Currie
8d29efe552 remove a debug print 2001-08-21 17:22:55 +00:00
Bill Currie
e71cbaf5ef fix for -- 2001-08-20 22:16:07 +00:00
Bill Currie
2af74aedca fix a segfault due to type mangling for ... functions 2001-08-20 18:23:47 +00:00