Commit graph

535 commits

Author SHA1 Message Date
Bill Currie
e38259e01f warn when a top-level local shadows a parameter 2002-02-19 00:16:56 +00:00
Bill Currie
d1fcfd1939 Implement --traditional so qfcc can be a nicer qcc. This disables several
keywords (quaternion integer function for break continue switch case default
NIL struct enum typedef) and converts some errors to warnings (assignment to
constants, insufficient function arguments, return; from non-void function,
anal function `pointer' type checks)
2002-02-18 06:23:59 +00:00
Bill Currie
49ef391664 make dist fix
----------------------------------------------------------------------
2002-02-16 05:15:24 +00:00
Bill Currie
b4000200e3 move the getopt files from qfcc/source to libs/util, link qw-master against
libQFutil and enable the option parsting in qw-master for win32.
2002-02-12 17:44:41 +00:00
Bill Currie
4f6e61d68b win32 compile fix 2002-02-05 22:56:21 +00:00
Bill Currie
16298914f0 default sourcedir to "" rather than "./" and strip leading paths from the
tempname when preserving temps
2002-02-05 22:08:19 +00:00
Bill Currie
cb0db8b8d1 disable debug putout and allow the cpp command line to be specified. 2002-02-05 19:35:45 +00:00
Bill Currie
f2a8f8ff28 make cpp command line selection more intelligent. This should take care of
the stuck cpp problem on openbsd.
2002-02-05 18:40:47 +00:00
Ragnvald Maartmann-Moe IV
a3c699a921 Fix three gitignores. 2002-01-31 07:49:29 +00:00
Bill Currie
ad6d847728 fix qfcc's incorrect allocation/initialization for pointers (eg, float [] foo) 2002-01-30 22:57:48 +00:00
Bill Currie
3d9c8a9a60 get nil conversions working fully and things like !pointer 2002-01-30 22:17:55 +00:00
Bill Currie
b7cfb95a64 update for new progs loader api and the makefile for the option of static
linking
2002-01-30 17:41:16 +00:00
Bill Currie
e5e157a804 update for new progs loader api 2002-01-30 17:20:10 +00:00
Jeff Teunissen
98f8642081 Oops. Well, I fscked that one up. It's fixed now. 2002-01-28 21:22:21 +00:00
Jeff Teunissen
418f922f0f Minor Forge updates, clearing out the backlog so I can do some more
development.
2002-01-28 15:23:13 +00:00
Jeff Teunissen
7ea87aa47a oops. Actually commit the new document icon this time. 2002-01-28 03:39:15 +00:00
Jeff Teunissen
29c68732c0 More Forge stuff.
Forge now loads the bundles in its resources first, and then loads the
bundles from the User, Local, Network, and System library directories,
in that order -- if it is told to by the defaults system.

Also, the MainPrefs class has some new options, to control what
directories Forge loads bundles from.
2002-01-26 22:09:15 +00:00
Jeff Teunissen
8ef321e2e8 Forge updates -- an icon for .forge files, some app info updates, and a
nib-loading fix for MainPrefs.
2002-01-26 05:13:25 +00:00
Jeff Teunissen
9585b6af92 Forge updates. Preferences is no more, since each bundle will have its
own prefs anyway. The "sample" bundle MainPrefs is more complete, and is
now loading its interface from a .gorm file -- this would be a .nib on
NeXTstep or Mac OS X, and it should be ready to run on those OSes
already -- since it doesn't do much. :)
2002-01-25 08:45:28 +00:00
Jeff Teunissen
4c8154a224 commit mods before I nuke the file. 2002-01-25 08:38:17 +00:00
Bill Currie
85588c8fcb start implementing the api for input lines and clean up a couple csqc
prototype issues.
2002-01-23 22:37:44 +00:00
Bill Currie
6a393d175e implement typedef 2002-01-23 20:50:25 +00:00
Bill Currie
3f958ae29b more make dist fixes 2002-01-22 18:04:03 +00:00
Bill Currie
ecd539cbd3 some make dist fixes 2002-01-22 17:17:18 +00:00
Bill Currie
c8ef2d8b55 subdirs must come /after/ their parent in the AC_OUTPUT list 2002-01-22 07:42:35 +00:00
Bill Currie
8a24b28d97 scary, but the only changes qfcc needed to build as part of quakeforge was
to auto-substitued the libs and headers.

 o  unconditionally build qfcc (for now, anyway) when building quakeforge
    (needed for cs-code compilation)
 o  when built as part of quakeforge (qfcc should still be buildable
    independently) always enable cpp
 o  autoconfiscate the client-side code
 o  build the client-side code using the built qfcc
 o  install the client-side code in $(datadir)/quakeforge/id1
2002-01-22 05:48:03 +00:00
Bill Currie
f1f2dd713d generate progdefs.h only for v6only
generate files.dat only if -F or --files is given on the command line
2002-01-21 23:30:54 +00:00
Bill Currie
7775dab7bb remove debug 2002-01-21 19:19:07 +00:00
Bill Currie
f2d097c013 resolve the case value before checking its type 2002-01-21 19:18:41 +00:00
Bill Currie
2ce5a91373 allow enum {...} name; but ignore name (eases C <-> QC header compat) 2002-01-21 19:09:23 +00:00
Bill Currie
64c5983742 enum support 2002-01-21 19:03:29 +00:00
Bill Currie
cef918df83 get array initialisation worrking 2002-01-18 08:26:37 +00:00
Bill Currie
d69762facd integer() and float() casts seem to work 2002-01-17 19:32:04 +00:00
Bill Currie
08c1d57c53 fix a param scoping error 2002-01-17 16:59:00 +00:00
Bill Currie
7227ab4363 qfcc.c:
add -P,--progs-src so you can specify the name of the progs.src file
rest:
	add/use print_type
2002-01-17 08:19:53 +00:00
Jeff Teunissen
2e3c1a55c6 some minor Forge updates. 2002-01-14 15:06:00 +00:00
Jeff Teunissen
8c2d3f65c3 Add a couple symbols to qfcc's preprocessor lines 2002-01-05 19:18:27 +00:00
Jeff Teunissen
9f6dcec9dd --save-temps support for qfcc. It'll leave files with the same filenames
they're generated from, with the exception that they will have an
extension of .p. Obviously, depends on cpp support.
2002-01-05 19:13:20 +00:00
Jeff Teunissen
a0370e52d2 Manpage should be both distributed and installed now. 2002-01-05 18:46:59 +00:00
Jeff Teunissen
33b6429aa7 Makefiles for docs. 2002-01-05 18:46:05 +00:00
Jeff Teunissen
abf73ea80a Support nibs in MainPrefs. 2002-01-04 20:31:53 +00:00
Bill Currie
f591b27532 set the result of the block used for self.maxs = obj.origin; type expressions 2002-01-04 18:43:55 +00:00
Bill Currie
718a64343b more old-code cleanup. move PR_LexString into make_string 2002-01-04 18:27:01 +00:00
Bill Currie
12d2338d1b handle dos line endings a little better 2002-01-04 17:13:13 +00:00
Forest Hale
184ff4a216 made qfcc compile again, by renaming com_token to qfcc_com_token so it does not conflict with QFutil 2002-01-04 11:12:52 +00:00
Bill Currie
9d2739598a character constants 2002-01-04 08:45:24 +00:00
Jeff Teunissen
c0e2639701 Add quaketoascii program, from Dwayne C. Litzenberger <dlitz@dlitz.net> 2001-12-31 18:10:20 +00:00
Bill Currie
375ada11bc update to current version 2001-12-18 06:53:49 +00:00
Bill Currie
3dafbebf10 fix up #0 builtin functions at runtime. not done automaticly (need to call
PR_RelocateBuiltins) and fix a bug with profiling and unlimited execution
counts
2001-12-14 08:15:04 +00:00
Jeff Teunissen
2185e0a92e Update qfcc man page. 2001-12-14 05:33:00 +00:00
Bill Currie
f392c395df fix some uninitialized warnings my gcc missed, but misty's got 2001-12-13 16:40:46 +00:00
Bill Currie
d95bf0ada8 blah 2001-12-12 22:04:34 +00:00
Bill Currie
112f74a357 make integer constant division warnings optional 2001-12-12 22:00:42 +00:00
Bill Currie
195dd1032e clean up some dead code 2001-12-12 21:52:07 +00:00
Bill Currie
2b458dd13d clean up line/file management 2001-12-12 21:50:11 +00:00
Bill Currie
6d65fe853d spontaneous temp defs need to have their users incremented when an
assignment is part of a sub expression
2001-12-12 21:29:04 +00:00
Bill Currie
7e38a8d9a0 clean up the return def selection for emit_assign_expr 2001-12-12 20:55:55 +00:00
Bill Currie
8ddce20949 pr_*: add storep.p so pointers can be stored into entities
emit.c: convert & (address) to . in unary .
        rewrite emit_assign_expr
expr.c: remove debug code and make unary . less agressive on address calcs
        also convert & (address) to . for lvals
2001-12-12 20:35:58 +00:00
Bill Currie
b56d7f3248 emit.c:
fix a missing else (should convert to switch)
expr.c:
	fix address_expr for binary expressions
	fix unary .
2001-12-12 18:34:41 +00:00
Bill Currie
f9149a0d6c finally get around to renaming type_name to pr_type_name 2001-12-12 17:15:09 +00:00
Bill Currie
cc34e5954f lots of work on better array/pointer/struct handline. doesn't quite work yet 2001-12-12 08:39:47 +00:00
Bill Currie
835468bcfb beginnings of breaking out the type code 2001-12-11 19:58:12 +00:00
Bill Currie
0bb01f310f don't crash when there are too many entities for update messages. just ignore
the excess.
2001-12-10 03:17:21 +00:00
Adam Olsen
e3508a5c64 - oops, count the command line properly 2001-12-09 16:52:43 +00:00
Adam Olsen
dfb405f4ae A script that produces a PNG from the timeframes.txt produced by doing
"cl_timeframes 1" and running a timedemo.  It uses grace to do the
work, so you need that installed.
2001-12-09 16:32:28 +00:00
Bill Currie
e976211faf header block fixes 2001-12-08 20:40:50 +00:00
Bill Currie
00b2a45ecd change the operator for "address" from "." to "&" so load.p can be implement.
this makes it so pointers in entities work.
2001-12-08 20:17:20 +00:00
Bill Currie
a184199146 get arrays of structures working 2001-12-08 17:36:58 +00:00
Bill Currie
b03a1bee42 ok, structures seem to generate correct code now 2001-12-08 08:19:48 +00:00
Bill Currie
3293c5e85f beginnings of structure code. committed because cvs diff doesn't work on
new files
2001-12-08 00:09:11 +00:00
Bill Currie
1767ad435f use the new immediate indeces to make small array indeces not use a global 2001-12-07 20:10:30 +00:00
Bill Currie
0c2f36f9a3 some dead code cleanup 2001-12-06 20:05:49 +00:00
Bill Currie
3c2c4aa9e6 indent whitespace cleanup. not perfect, but a bit more consistent now 2001-12-06 19:49:40 +00:00
Bill Currie
61786182d2 whitespace 2001-12-06 18:14:44 +00:00
Bill Currie
12a0a10d33 more alpha portability fixes 2001-11-29 19:35:25 +00:00
Jeff Teunissen
d16ab6eed0 Forge: stuff I did only partially. 2001-11-29 01:02:39 +00:00
Jeff Teunissen
a7dfe849fd Forge updates. The app controller now has methods for bundles to call,
to register functionality with the app.
2001-11-28 23:46:37 +00:00
Jeff Teunissen
74e2f63188 *** empty log message *** 2001-11-28 23:44:26 +00:00
Bill Currie
4912f3083d My gl stubs code for the null-renderer tests. Builds GLstub.so which should
then be used for the gl_driver cvar (you will generally need to give the full
path).
2001-11-27 23:56:10 +00:00
Jeff Teunissen
83a778467c Preferences.m: function scoping fixes (static is your friend).
rest: bundle loading. It's alive! Alive, I tell you! Mwahahahaha!
...
uhh...

* Deek hides the bodies
2001-11-22 07:28:01 +00:00
Jeff Teunissen
84bb78abe4 Nuke some stuff from .gitignore 2001-11-21 22:30:32 +00:00
Jeff Teunissen
acddb949e3 Nuking the configure stuff. There's no need for it yet, maybe not ever.
Add some flags (-Wall -Werror) to GNUmakefile.preamble.
Fix some stuff -Wall found.
2001-11-21 22:22:14 +00:00
Jeff Teunissen
9c92717c15 The beginnings of bundle-loading support Scary, but it seems to work! 2001-11-21 18:47:08 +00:00
Bill Currie
3f7c4f146e allocate space for field arrays and report entity size 2001-11-15 05:31:15 +00:00
Bill Currie
e45bb62f23 ok, correct code seems to be getting generated for both array access and
entity field access
2001-11-15 04:32:50 +00:00
Bill Currie
40d47e91cb win32 portability fixes 2001-11-15 03:54:35 +00:00
Bill Currie
7d9266a3f0 beginnings of array support. no array initialization yet and foo[i] = bar is
broken.
2001-11-15 00:46:36 +00:00
Bill Currie
8aa83d04f3 oops, that's not how that works :) 2001-11-15 00:25:15 +00:00
Bill Currie
cf37275def add -g option (shortcut for --code=debug) 2001-11-14 23:17:20 +00:00
Bill Currie
ed331517b3 more grammar re-work preparing for arrays and structs 2001-11-14 22:31:57 +00:00
Bill Currie
a2bfff5dc4 simplify the type rule 2001-11-14 07:16:58 +00:00
Bill Currie
3fe67eecd2 expr.c:
it helps if one understands /why/ something is done. I think this
	might be it for the reference count tweeks
switch.c:
	o	better control over whether case ranges are built
	o	/always/ append the temp = test expression and use temp instead of
		test for the != check
	o	only ever build case ranges if the switch expression is integer
2001-11-14 06:45:31 +00:00
Bill Currie
dc80f51d89 fix a missed immediate type missmatch case 2001-11-14 05:08:37 +00:00
Bill Currie
da36feff7f oops, failed to notice that relocs on temp defs weren't being done correctly
memset wasn't such a good idea :P
2001-11-13 23:21:23 +00:00
Bill Currie
cfa47717c6 expr.c:
once again, temp def ref counts seem to be correct
pr_def.c:
	reset recycled temp defs
2001-11-13 23:17:32 +00:00
Bill Currie
ad5deea582 missed this in the cleanup 2001-11-13 23:14:59 +00:00
Bill Currie
3874d78697 slightly better code, but the temp isn't getting ref-counted correctly 2001-11-13 22:11:45 +00:00
Bill Currie
68fb0a1147 clean out a bunch of unneeded code. this should take care of static linking 2001-11-13 20:34:21 +00:00
Bill Currie
645c400802 rearrange default jump for slightly better code generation 2001-11-13 20:27:05 +00:00
Bill Currie
4291f9c711 create new_bind_expr and more tweeks to temp def ref counting 2001-11-13 18:49:27 +00:00