Bill Currie
|
abf25e0e1c
|
real fix for uninitialized functions
This is an imperfect revision of history.
|
2004-11-12 05:04:00 +00:00 |
|
Bill Currie
|
634dcbba95
|
forgot to allow struct move (for struct assigment)
This is an imperfect revision of history.
|
2004-11-11 22:41:00 +00:00 |
|
Bill Currie
|
64cc8c60d2
|
compile time protocol support seems to be complete now. fortunatly, protocols had never been written out so the corrections to the protocol related stuctures do not need a progs version bump. runtime protocol support hasn't been fully tested yet.
+load runtime support seems to be working.
This is an imperfect revision of history.
|
2004-11-11 00:34:00 +00:00 |
|
Bill Currie
|
7dfd9ab502
|
Use the script api to parse progs.src instead of idparse. Now any additional tokens on the first line of progs.src are ignored and any additional tokens on subsequent lines get cumulatively added to the cpp command line. See progs.src[.in] in tools/qwaq for a simple example.
This is an imperfect revision of history.
|
2004-11-11 00:24:00 +00:00 |
|
Bill Currie
|
a97f74a6ac
|
that particular error case is a type mismatch rather than an internal error. found when trying to compare a SEL with a string... oops :)
This is an imperfect revision of history.
|
2004-11-11 00:20:00 +00:00 |
|
Bill Currie
|
b35561504c
|
do proper selector registration. unfortunatly, I discovered I'd created pr_method_t incorrectly and so had to bump the progs version again
This is an imperfect revision of history.
|
2004-11-10 05:37:00 +00:00 |
|
Bill Currie
|
8770df39e5
|
start documenting things (progs building still borked)
This is an imperfect revision of history.
|
2004-11-08 23:27:00 +00:00 |
|
Bill Currie
|
201252c1c0
|
FIXME cleanup and a missed win32 compile fix
This is an imperfect revision of history.
|
2004-11-06 02:21:00 +00:00 |
|
Bill Currie
|
b46cff08aa
|
handle param name changes between prototype and declaration gracefully
This is an imperfect revision of history.
|
2004-11-02 23:54:00 +00:00 |
|
Bill Currie
|
9f52181e34
|
fixes for methods in categories or not in an interface
This is an imperfect revision of history.
|
2004-11-02 11:56:00 +00:00 |
|
Bill Currie
|
181df01add
|
initialize the function tables properly when "converting" a qfo, fix a buffer overflow in file loading and remove the now unnecessary hunk initialization.
This is an imperfect revision of history.
|
2004-11-02 07:15:00 +00:00 |
|
Bill Currie
|
a3a2dd62e3
|
fix type of "self"
This is an imperfect revision of history.
|
2004-11-02 07:13:00 +00:00 |
|
Bill Currie
|
a4dbdb4d06
|
whitespace
This is an imperfect revision of history.
|
2004-11-02 07:08:00 +00:00 |
|
Bill Currie
|
fff41d664a
|
detect re-declaring identifiers as different types (typedef, enum, var, etc)
This is an imperfect revision of history.
|
2004-11-02 07:02:00 +00:00 |
|
Bill Currie
|
a2e05dbe83
|
make bison output a state file
This is an imperfect revision of history.
|
2004-11-02 05:19:00 +00:00 |
|
Bill Currie
|
ca46503607
|
add -Wsign-compare (default for -Wall only in C++) and fix up the warnings
|
2004-07-13 19:14:01 +00:00 |
|
Bill Currie
|
8c10e2e355
|
this should fix the string case errors on sparc64
|
2004-05-15 01:00:47 +00:00 |
|
Bill Currie
|
3483b3b2b6
|
handle #pragma gracefully (ie, ignore it)
|
2004-05-09 02:12:49 +00:00 |
|
Jeff Teunissen
|
fe654959ee
|
qfcc man page updates.
|
2004-04-28 04:49:15 +00:00 |
|
Jeff Teunissen
|
31f5bb5d96
|
Small changes to the QFCC book.
|
2004-04-28 00:43:03 +00:00 |
|
Jeff Teunissen
|
b057b6cb26
|
Some signed/unsigned formatting stuff found by lint.
|
2004-04-27 23:17:41 +00:00 |
|
Bill Currie
|
14900bb82e
|
fast-float code option (defaults to on). kills almost 3000 statements from
prozac
|
2004-04-27 20:24:37 +00:00 |
|
Bill Currie
|
8a7bb9c4a0
|
fix a silly that messed up type mismatch errors
|
2004-04-12 23:46:21 +00:00 |
|
Bill Currie
|
9a3acc8035
|
get the field offset correctly
|
2004-04-09 04:30:19 +00:00 |
|
Bill Currie
|
7b28c555ba
|
quaternion field access now works
|
2004-04-09 04:12:44 +00:00 |
|
Bill Currie
|
332ec82495
|
update the scope of local defs to the parent scope when the creation scope
goes away (doesn't get updated to the global scope). fixes a bug where
local defs would be miscounted (and sometimes lost)
|
2004-04-09 03:47:41 +00:00 |
|
Bill Currie
|
0b61dae402
|
allow .imm fields (need a better test, I think)
|
2004-04-09 03:45:55 +00:00 |
|
Bill Currie
|
50dc955652
|
fix a couple out-by-one errors highlighted by quaternions
|
2004-04-09 02:20:47 +00:00 |
|
Bill Currie
|
0e47ee96f8
|
spelling fixes
|
2004-04-08 18:53:46 +00:00 |
|
Bill Currie
|
4c4f40f137
|
fix a few bugs. basics seem to be working
|
2004-04-08 05:13:24 +00:00 |
|
Bill Currie
|
5869cb693e
|
oops
|
2004-04-08 05:04:50 +00:00 |
|
Bill Currie
|
a7103c6732
|
quaternion conjugate
|
2004-04-08 04:59:10 +00:00 |
|
Bill Currie
|
fc2413ff72
|
more quaternion work (should be working, haven't come up with tests yet)
|
2004-04-08 03:32:14 +00:00 |
|
Bill Currie
|
4882005a49
|
compile fixes (oops) and start working on quaternion support in qfcc
|
2004-04-08 02:33:20 +00:00 |
|
Bill Currie
|
8220d6d3c9
|
for loop tests
|
2004-03-30 02:31:50 +00:00 |
|
Bill Currie
|
25ac9cb07b
|
fix "for (;;)" etc
|
2004-03-30 02:31:02 +00:00 |
|
Bill Currie
|
5bd524cd8b
|
add a note about memory consuption
|
2004-02-24 02:56:32 +00:00 |
|
Bill Currie
|
f1c9a8d24b
|
remove a mostly unused field
|
2004-02-21 05:58:01 +00:00 |
|
Bill Currie
|
14e8bfe94b
|
auto-init for uninitialized locals in traditional mode as requested by
Grievre
|
2004-02-21 05:52:05 +00:00 |
|
Bill Currie
|
0360859a0f
|
all warnings (except for @self and self) are now fully controllable
|
2004-02-17 00:39:21 +00:00 |
|
Bill Currie
|
efb52dc9f9
|
don't seg on null field names
|
2004-02-13 23:08:22 +00:00 |
|
Bill Currie
|
865b31caac
|
make sure messages generated by issues within a function don't get
"At top level"
|
2004-02-13 04:57:15 +00:00 |
|
Bill Currie
|
b6c2320d5d
|
change --include FILE to pre-include a file rather than add a directory search
path. Maps to -include FILE on the cpp command line.
|
2004-02-13 04:46:50 +00:00 |
|
Bill Currie
|
7ed77fd18b
|
ignore pdf files
|
2004-02-12 21:58:52 +00:00 |
|
Bill Currie
|
69730cae8b
|
fix some type classes in older bison
|
2004-02-12 01:37:27 +00:00 |
|
Bill Currie
|
02d89ee7d5
|
allow computed functions for "think" in state expressions
|
2004-02-11 08:09:10 +00:00 |
|
Bill Currie
|
1c090c38a3
|
allow non-const expressions for the frame number and make sure the time
step is a float (for state expressions)
|
2004-02-11 04:00:11 +00:00 |
|
Bill Currie
|
afdbd90bc1
|
some tests I've accumulated over time. don't want to lose them accidently
:)
|
2004-02-11 02:23:40 +00:00 |
|
Bill Currie
|
0fe4c2a600
|
catch redefined functions
|
2004-02-11 01:53:17 +00:00 |
|
Bill Currie
|
c3f41e3e69
|
new opcode: state.f. same as state, but takes a 3rd float operand to
specify the step for calculating nextthink. accessed using
[frame, think, step] (state is [frame, think])
|
2004-02-11 01:43:33 +00:00 |
|
Bill Currie
|
1fc517f7db
|
C style functions can now (optionally) be used (void foo ();)
|
2004-02-11 00:36:34 +00:00 |
|
Bill Currie
|
e2602bc9d5
|
fix misparse of void () foo;
|
2004-02-10 23:49:45 +00:00 |
|
Bill Currie
|
7af8f8a6f6
|
; at the end of a function is no longer required. void () foo = {} and
void () foo = {}; are both valid now.
|
2004-02-10 23:20:44 +00:00 |
|
Bill Currie
|
6e4c6478a1
|
getting closer to optional ; at the end of functions. also gets rid of the
need for the context-sensitivity hack used for distinquishing frunction
inits from struct/array inits
|
2004-02-10 03:25:24 +00:00 |
|
Ragnvald Maartmann-Moe IV
|
2b8fc38a2c
|
Fix an ypo. ;)
|
2004-02-09 16:51:06 +00:00 |
|
Bill Currie
|
ddc44f33da
|
compress the 4 method building rules into 2
|
2004-02-09 07:35:19 +00:00 |
|
Bill Currie
|
3f27042e8d
|
forgot to look after current_storage with methods
|
2004-02-09 07:17:44 +00:00 |
|
Bill Currie
|
1181fb267b
|
don't seg when constants are involved in && or || expressions
|
2004-02-09 02:23:37 +00:00 |
|
Bill Currie
|
499dac6bb1
|
step one towards more flexible function declarations
|
2004-02-08 23:46:40 +00:00 |
|
Bill Currie
|
f70605f5f7
|
ensure a op= b treats b as if it was (b)
|
2004-02-08 05:28:30 +00:00 |
|
Bill Currie
|
bf592412f8
|
give temp defs a name, making it easier to read disassembly output (.tmpN)
|
2004-02-06 08:58:19 +00:00 |
|
Bill Currie
|
1d800caab7
|
make autoconvertion work for return
|
2004-02-06 08:40:28 +00:00 |
|
Chris Ison
|
6ec1cfe389
|
win32 fix for over-compliant getopt
|
2004-02-05 03:27:35 +00:00 |
|
Bill Currie
|
8a14e30896
|
cast block expressions
|
2004-02-04 06:41:07 +00:00 |
|
Bill Currie
|
d02b0686b1
|
don't seg if the method can't be found
|
2004-02-04 06:31:12 +00:00 |
|
Bill Currie
|
61da478188
|
these changes from earlier seem to be ok
|
2004-02-04 06:00:45 +00:00 |
|
Bill Currie
|
c43950abd8
|
autoconvert for function parameters now works :)
|
2004-02-04 05:49:54 +00:00 |
|
Bill Currie
|
892e80938b
|
that made a royal mess :(
|
2004-02-04 04:49:46 +00:00 |
|
Bill Currie
|
b2474a2b97
|
better auto-conversion of function parameters (ugh, this is getting messy
:( )
|
2004-02-04 04:33:08 +00:00 |
|
Bill Currie
|
f79e34628b
|
broke returning NIL
|
2004-02-04 02:30:18 +00:00 |
|
Bill Currie
|
ab4f0e7ca9
|
warn on return foo (); where foo returns void
|
2004-02-04 01:30:12 +00:00 |
|
Bill Currie
|
f748b6582a
|
need to do relocs separately from ddef creation due to pr_globals needing
to be allocated first
|
2004-02-04 00:36:15 +00:00 |
|
Bill Currie
|
e8a9060219
|
oops, messed up things like float = int
|
2004-02-04 00:30:42 +00:00 |
|
Bill Currie
|
3cd806fdcc
|
fix some over-conversions
|
2004-02-04 00:27:42 +00:00 |
|
Bill Currie
|
1068032f1b
|
make implementation methods not in the interface work properly when
-Winterface-check isn't specified and make sure classes don't clash with
defs or enums
|
2004-02-03 07:48:23 +00:00 |
|
Bill Currie
|
0f94dd95d2
|
make @class foo work when foo is already defined
|
2004-02-03 07:29:20 +00:00 |
|
Bill Currie
|
389ff5be1c
|
finally found the correct way to handle generated source
|
2004-02-03 05:30:11 +00:00 |
|
Bill Currie
|
4f9a24d94d
|
and another one
|
2004-02-03 03:38:51 +00:00 |
|
Bill Currie
|
9df4a7948e
|
make dist fixes
|
2004-02-03 03:22:48 +00:00 |
|
Bill Currie
|
c16fc91328
|
update with qfprogs
|
2004-02-03 02:40:00 +00:00 |
|
Bill Currie
|
24294c8778
|
make printing of global contents in PR_PrintStatement optional so
disassembly output is cleaner
|
2004-01-31 04:26:01 +00:00 |
|
Bill Currie
|
f05be31cae
|
fix for perc = itof (perc_val) / (100 / itof (size));
ie, better detection of function calls in binary expressions
|
2004-01-31 04:11:45 +00:00 |
|
Bill Currie
|
fb49b06c2c
|
remove debug info
|
2004-01-30 07:29:04 +00:00 |
|
Bill Currie
|
394e83e419
|
perform relocations so disassembly dumps of qfo files make sense
|
2004-01-30 07:17:28 +00:00 |
|
Bill Currie
|
16e4964a31
|
fix a couple struct forward ref issues
|
2004-01-30 07:16:48 +00:00 |
|
Bill Currie
|
f87a5d14e2
|
convert the debug info, too. seems to work
|
2004-01-30 05:35:30 +00:00 |
|
Bill Currie
|
a2e8080a03
|
init entity info
|
2004-01-29 08:22:59 +00:00 |
|
Bill Currie
|
2e87490f3b
|
pr_stringsize hasn't reflected static strings size for a while...
|
2004-01-29 08:11:04 +00:00 |
|
Bill Currie
|
206a15ef14
|
while not yet perfect, qfprogs now works with qfo files
|
2004-01-29 07:43:05 +00:00 |
|
Bill Currie
|
b2ccb50b81
|
move qfpreqcc in with qfcc for relationship reasons
|
2004-01-28 05:34:23 +00:00 |
|
Bill Currie
|
d3018dd79b
|
move qfprogs in with qfcc (it's going to need to share code)
|
2004-01-28 05:23:43 +00:00 |
|
Bill Currie
|
ba901863d2
|
fix a missing ;
|
2004-01-27 04:41:20 +00:00 |
|
Bill Currie
|
897b49140a
|
initialized locals are a little trickier...
|
2004-01-25 22:08:08 +00:00 |
|
Bill Currie
|
f8ed454547
|
warn on if (a = b)
|
2004-01-25 21:45:07 +00:00 |
|
Bill Currie
|
7423ee389d
|
better timing for constant folding
|
2004-01-25 21:36:44 +00:00 |
|
Bill Currie
|
39c7ff1e90
|
disable debug output
|
2004-01-25 08:59:55 +00:00 |
|
Bill Currie
|
51b0a66ac7
|
better constant folding with auto-conversion between scalar types (might
make that optional for non-constants)
|
2004-01-25 08:55:03 +00:00 |
|
Bill Currie
|
3e5a103e55
|
proper error checking when openning progs.src
|
2004-01-22 04:16:19 +00:00 |
|
Bill Currie
|
8f440c7911
|
linker.c:
I think I found the real reason doxygen gets confused
expr.c:
add a check for x & y == 2 (or similar) doesn't work for constant y at
the moment.
|
2004-01-22 01:04:48 +00:00 |
|
Bill Currie
|
2f21926568
|
more constant folding
|
2004-01-21 21:58:34 +00:00 |
|
Bill Currie
|
e63b205fd2
|
don't seg when in traditional mode and @ is seen
|
2004-01-21 21:43:31 +00:00 |
|
Bill Currie
|
1ddd7da5ec
|
remove redundant cast
|
2004-01-13 03:07:36 +00:00 |
|
Chris Ison
|
34f98e5a88
|
fix incompatable pointer type
|
2004-01-12 05:36:23 +00:00 |
|
Bill Currie
|
41106a1f01
|
hopefully shut doxygen up about a "const char" function
|
2004-01-11 05:52:19 +00:00 |
|
Bill Currie
|
802aacfaf4
|
allow constant expressions to be used for builtin numbers
|
2004-01-07 00:03:05 +00:00 |
|
Bill Currie
|
35d690c701
|
give an error message instead of segging for the following code:
@class foo;
@interface bar : foo
@end
|
2003-12-19 04:59:34 +00:00 |
|
Bill Currie
|
bb4e9de0db
|
fix a real oopsie with if (const)
|
2003-11-16 07:17:18 +00:00 |
|
Bill Currie
|
834ab26be5
|
remove some buggy debug code :P
|
2003-10-27 21:48:13 +00:00 |
|
Bill Currie
|
63414ea836
|
more gccisms in the error reporting (In function ...)
|
2003-10-25 04:35:47 +00:00 |
|
Bill Currie
|
58d0f188f1
|
recover from errors in bool expressions (ie, don't segfault)
|
2003-10-24 22:23:56 +00:00 |
|
Bill Currie
|
8e030089a7
|
only one define/undefine/include per option
|
2003-10-24 21:23:03 +00:00 |
|
Bill Currie
|
2469c36302
|
yay, short circuit logic done :)
|
2003-10-23 06:21:07 +00:00 |
|
Bill Currie
|
7ef80d1da2
|
mske sure .self and .this are defined in progs.src mode (ie, @self and
@this)
|
2003-10-22 21:49:47 +00:00 |
|
Bill Currie
|
c76282c668
|
fix bools in function calls
|
2003-10-22 16:49:57 +00:00 |
|
Bill Currie
|
5f97de56d1
|
fix a few bugs
|
2003-10-22 09:14:53 +00:00 |
|
Bill Currie
|
969dad87eb
|
fix a secfault in return_expr
|
2003-10-22 08:30:54 +00:00 |
|
Bill Currie
|
72ae59f882
|
short circuit logic can now be controlled (see man page)
|
2003-10-22 08:27:38 +00:00 |
|
Bill Currie
|
945006494f
|
short circuit logic for && and || (as per C). forces standard precedence
(ie, breaks --traditional) when enabled (no choice at the moment, next fix)
|
2003-10-22 08:05:17 +00:00 |
|
Bill Currie
|
99034fef27
|
initialized locals aren't constant
|
2003-09-25 02:05:43 +00:00 |
|
Bill Currie
|
4ce81b28d7
|
remove nested scopes for traditional mode
|
2003-09-23 17:59:46 +00:00 |
|
Bill Currie
|
91207c0180
|
make void functions actually return float in traditional mode (qcc allowed
things like foo = void_function)
|
2003-09-23 16:57:53 +00:00 |
|
Bill Currie
|
387464a27c
|
mangle precedence of = relative to && and || for --traditional (bletch).
also make noise when assigning to bad lvalues (eg !x = y)
|
2003-09-23 16:42:03 +00:00 |
|
Bill Currie
|
ba26628b80
|
--traditional now "fixes" (ie, breaks) operator precedence to match qcc
except for the relationship between "=" and "&&" and "||": not sure I want
to go that far towards bug compatability.
|
2003-09-22 22:15:31 +00:00 |
|
Bill Currie
|
9027648721
|
kill -t for --traditional, add --advanced, default to --traditional for
progs.src mode and --advanced otherwise
|
2003-09-20 04:13:32 +00:00 |
|
Bill Currie
|
651fa8ca12
|
correct the operator precendece to match C. hopefully won't cause any
problems :)
|
2003-09-19 20:50:05 +00:00 |
|
Bill Currie
|
11538d4745
|
access arrays in structs more efficiently (especially when using constant
indeces)
|
2003-09-02 17:41:16 +00:00 |
|
Bill Currie
|
f10829206a
|
use a cast expression rather than and bind expression to do the unsigned
comparison for switches. clears the notice (bind seems to be correct in
general) and is more correct conceptually anyway.
|
2003-09-02 16:53:45 +00:00 |
|
Bill Currie
|
23b525059f
|
cast between integer and unsigned just by changing access method
effectively deprecating conv.ui and conv.iu (they'll die eventually:)
|
2003-09-02 16:45:36 +00:00 |
|
Bill Currie
|
3a6c8b8b16
|
wrong place to decrement uses. now have a problem in switch :/
|
2003-09-02 06:23:57 +00:00 |
|
Bill Currie
|
ef4ca0c798
|
some doxygen tweaks
|
2003-08-31 05:24:24 +00:00 |
|
Bill Currie
|
b01d4d4589
|
get the type for the destination from the right place (hope that wasn't
a bugfix for something else:)
|
2003-08-24 20:38:32 +00:00 |
|
Bill Currie
|
7cffeb27bf
|
correct the temp def counting when casting
|
2003-08-24 08:17:31 +00:00 |
|
Bill Currie
|
6086aa2b99
|
allow casts between pointers and integers
|
2003-08-24 08:03:25 +00:00 |
|
Bill Currie
|
a08efafb7a
|
make sure __VERSION6__ is defined when it should be
|
2003-08-24 07:26:02 +00:00 |
|
Bill Currie
|
385a90e8fb
|
correct pr_symtab_t to include the pointer to the array of selectors used
in the module. Unfortunatly, this requires a version bump on both qfo and
progs files due to the changes structure layout.
|
2003-08-23 06:15:19 +00:00 |
|
Bill Currie
|
b38486d405
|
make rel_def_op work properly
|
2003-08-22 19:48:14 +00:00 |
|
Bill Currie
|
e9ca03416a
|
create the temp def for bound defs properly
|
2003-08-22 18:16:30 +00:00 |
|
Bill Currie
|
d20b8bf0c1
|
pass NIL though ... safely
|
2003-08-22 06:04:31 +00:00 |
|
Bill Currie
|
303287dc11
|
don't seg on undefined vars
|
2003-08-22 05:48:19 +00:00 |
|
Bill Currie
|
204243fe95
|
better message type checking
|
2003-08-22 05:26:47 +00:00 |
|
Bill Currie
|
febc57e71b
|
typecheck message params when possible
|
2003-08-22 04:08:33 +00:00 |
|
Bill Currie
|
7d09105740
|
remove debug code
|
2003-08-21 02:24:11 +00:00 |
|
Bill Currie
|
11c7c27f70
|
better relocations: pointers to structure members now work
|
2003-08-21 02:21:30 +00:00 |
|
Bill Currie
|
a2300387de
|
fix a bunch of segfaults
|
2003-08-20 22:36:02 +00:00 |
|
Bill Currie
|
93cafe878a
|
convert NIL properly in function calls
|
2003-08-20 20:28:28 +00:00 |
|
Bill Currie
|
7d830ffc1f
|
make @defs work properly and don't do uninitialized checks on structs
|
2003-08-20 19:58:41 +00:00 |
|
Bill Currie
|
aa712c0169
|
make [super foo] work in category methods
|
2003-08-18 06:11:41 +00:00 |
|
Bill Currie
|
aa4f81b6da
|
class.c:
whitespace
switch.c:
set up the relocations for the switch jump table properly
|
2003-08-18 02:57:21 +00:00 |
|
Bill Currie
|
515dbaccc0
|
make qc-lex.c and qc-parse.[ch] part of the distribution (two less
requirements for the average user)
|
2003-08-12 18:22:11 +00:00 |
|
Bill Currie
|
4a680bf981
|
grovel around for the source file and line of an undefined def to give
better diagnostics
|
2003-08-06 21:36:07 +00:00 |
|