Bill Currie
|
b6a4a520d5
|
silence bison's new warnings
|
2006-12-01 08:17:55 +00:00 |
|
Bill Currie
|
1925bef0c1
|
fix a bunch of bugs with single-cpp processing when not keeping temps
|
2006-08-20 06:20:30 +00:00 |
|
Bill Currie
|
130e6c1a3f
|
fix some intermediate file issues
|
2006-05-24 14:50:24 +00:00 |
|
Bill Currie
|
f7df6fea17
|
instead of having cpp args in progs.src, potentially breaking some mods, generate progs.i as a series of #includes and then compile everything in one pass
|
2006-05-24 14:35:39 +00:00 |
|
Bill Currie
|
ff28197da6
|
pass progs.src through cpp too
|
2006-05-24 11:19:48 +00:00 |
|
Bill Currie
|
ada9797009
|
why r+t? we don't need to write.
|
2006-05-24 11:18:18 +00:00 |
|
Bill Currie
|
728dde167d
|
explicity state errors are errors rather than leaving it implicit (tracking
gcc's messages again;)
|
2005-08-17 23:05:10 +00:00 |
|
Bill Currie
|
3fb03fc2be
|
hah, should have been using __attribute__((used)) all that time (rather
than __attribute__((unused))). fixes the missing console in -x11
|
2005-08-04 15:27:09 +00:00 |
|
Bill Currie
|
3f58823fed
|
vector-calls now works with rcall :)
|
2005-06-12 11:37:28 +00:00 |
|
Bill Currie
|
aa6265859a
|
allow -Cno-v6only to work when defaulting to traditional
|
2005-06-12 11:36:30 +00:00 |
|
Bill Currie
|
762aefc9b1
|
implement Raven's calling convention (rcall: first 2 params in opb and
opc). should give a general speedup to most progs.
|
2005-06-12 09:54:01 +00:00 |
|
Bill Currie
|
66cabb587f
|
add the vector-calls "optimisation" from fteqcc. makes it possible to
compile the version of frogbot with waypoints for almost 300 maps.
|
2005-06-10 07:31:25 +00:00 |
|
Bill Currie
|
116860bb66
|
don't segfault when running out of globals
|
2005-06-10 05:16:20 +00:00 |
|
Bill Currie
|
9f662787e0
|
get struct copy to/from struct fields via pointers. fixes a bug found by
snax
|
2005-06-09 10:34:03 +00:00 |
|
Bill Currie
|
dff55040bc
|
noticed a potential unused warning issue if that version of flex gets hit
again
|
2005-03-31 09:55:41 +00:00 |
|
Bill Currie
|
0edd694bac
|
fix a default action type clash in some versions of bison
|
2005-03-31 08:23:11 +00:00 |
|
Bill Currie
|
b71f12a616
|
warning message cleanup
This is an imperfect revision of history.
|
2004-11-18 06:08:20 +00:00 |
|
Bill Currie
|
ae456dc3a4
|
`secret' .c support so automake's dependency style autodetection works
This is an imperfect revision of history.
|
2004-11-14 23:15:00 +00:00 |
|
Bill Currie
|
554f4d071a
|
get the type right when accessing arrays in a struct (in a pointer?)
This is an imperfect revision of history.
|
2004-11-13 13:22:30 +00:00 |
|
Bill Currie
|
56838844d2
|
add support for -E and still compile when -MD is used
This is an imperfect revision of history.
|
2004-11-13 13:22:00 +00:00 |
|
Bill Currie
|
66257e3a88
|
run in fear, function overloading is here
This is an imperfect revision of history.
|
2004-11-13 11:50:00 +00:00 |
|
Bill Currie
|
9b81bc5ea6
|
allow access to the parameter type via @param and variable initializers for local arrays/structs.
This is an imperfect revision of history.
|
2004-11-13 04:02:00 +00:00 |
|
Bill Currie
|
5f34f87b58
|
ivar access control seems to work now :)
This is an imperfect revision of history.
|
2004-11-13 01:37:00 +00:00 |
|
Bill Currie
|
4d044bfea4
|
make entity.vector.x work properly by making relative field offset work. also don't emit a field def for the resulting immediate
This is an imperfect revision of history.
|
2004-11-12 10:49:00 +00:00 |
|
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
|
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
|
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
|
25ac9cb07b
|
fix "for (;;)" etc
|
2004-03-30 02:31:02 +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
|
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
|
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 |
|
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
|
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
|
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
|
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 |
|