Commit Graph

1743 Commits

Author SHA1 Message Date
Bill Currie e28ee0378f Gracefully handle returning NIL though a bad type. 2010-11-24 17:01:18 +09:00
Bill Currie 67beaf4487 Nil is a constant, so allow it in global initializers. 2010-11-24 17:01:18 +09:00
Bill Currie 799d46f83d Check for incomplete types and better param/return size checking. 2010-11-24 17:01:17 +09:00
Bill Currie a623fb53a7 Proper support for empty structs and unions.
They now have a single private, void, unnamed member, resulting in a size of
1 word. This makes empty structs useful for typed opaque handles.
2010-11-24 17:01:17 +09:00
Bill Currie e5e560cbaf Ensure struct params are small enough to fit in the param slots. 2010-11-24 17:01:17 +09:00
Bill Currie 49ea878ad9 Slightly more informative progress.
Display per-thread current portal number. Will get messy if there are more threads than the screen width can handle.
2010-11-21 09:56:31 +09:00
Bill Currie 2ef291bf46 Make mdl.py work on 64 bit machines. 2010-10-18 17:53:04 +09:00
Bill Currie 0c4b2f9e19 Add the default extension when no output file is specified. 2010-10-16 22:09:18 +09:00
Bill Currie 98fa427456 Add the extract-hull option to the usage output. 2010-10-16 16:16:58 +09:00
Bill Currie 985c27b52d Some more brush documentation. 2010-10-13 20:52:08 +09:00
Bill Currie ef7958d680 Lots of const correctness. 2010-10-13 20:52:08 +09:00
Bill Currie f4bff1d3b0 Make some code more readable. 2010-10-13 20:52:08 +09:00
Bill Currie 16e067c8cb More portal documentation. 2010-10-13 20:52:08 +09:00
Bill Currie 538956c389 Make parts of CutNodePortals_r() easier to read. 2010-10-13 20:52:08 +09:00
Bill Currie 08c6a185ad Documentation for writebsp. 2010-10-13 20:52:08 +09:00
Bill Currie d90a630b04 Call AddAnimatingTextures only once rather than for every wad file. 2010-10-13 20:52:08 +09:00
Bill Currie fcd1897421 Create the qfbsp doxygen modules.
Also, make doxygen extract static functions as well, so qfbsp's docs can be
more complete.
2010-10-13 20:52:08 +09:00
Bill Currie bfc6c9e798 Document the smart-leak function. 2010-10-13 20:52:07 +09:00
Bill Currie 93517d40d8 Finish the port of smart leak files.
This comes from the OpenQuartz version of qbsp.
2010-10-13 20:52:07 +09:00
Bill Currie 142defe9c0 Parameter consistency fixes.
Make the params for FreeWinding and CopyWinding consistent with those in
qfbsp. This fixes some doxygen warnings while I think about how best to
handle the duplicate code.
2010-10-13 20:52:07 +09:00
Bill Currie ad8b08238d Make some vector code easier to read. 2010-10-13 20:52:07 +09:00
Bill Currie 44776f111f Documentation for winding. 2010-10-13 20:52:07 +09:00
Bill Currie a8bd522ca1 Documentation for tjunc. 2010-10-13 20:52:07 +09:00
Bill Currie f758cacc69 Make FindEdge easier to read. 2010-10-13 20:52:07 +09:00
Bill Currie fc0e0f4665 Documentation for surfaces. 2010-10-13 20:52:07 +09:00
Bill Currie f3e7a7ca89 Documentation for solidbsp. 2010-10-13 20:52:07 +09:00
Bill Currie 4b1b838f87 More braces and whitespace. 2010-10-13 20:52:07 +09:00
Bill Currie 313677ee96 Add some braces and a bit of whitespace 2010-10-13 20:52:07 +09:00
Bill Currie 69189600a4 Some docs for bsp5.h 2010-10-13 20:52:07 +09:00
Bill Currie 68dda63de5 Documentation for region. 2010-10-13 20:52:07 +09:00
Bill Currie 00b635236d Document the readbsp code. 2010-10-13 20:52:07 +09:00
Bill Currie 34d60539de Document the portals code. 2010-10-13 20:52:06 +09:00
Bill Currie cc098fa720 Documentation for outside. 2010-10-13 20:52:06 +09:00
Bill Currie a92bd6dec1 Document the merge code 2010-10-13 20:52:06 +09:00
Bill Currie 6ce7c5040b Make NewFaceFromFace const-correct 2010-10-13 20:52:06 +09:00
Bill Currie 6c89883c8f Lots of csg4 documentation 2010-10-13 20:52:06 +09:00
Bill Currie 17e5813a51 Make a block of code a little easier to read. 2010-10-13 20:52:06 +09:00
Bill Currie a5c96cb825 More documentation and move some functions. 2010-10-13 20:52:06 +09:00
Bill Currie 2e6eb419ca Some documentation for the map parser. 2010-10-13 20:52:06 +09:00
Bill Currie 5cf5c1e227 lots of whitespace 2010-10-13 20:52:06 +09:00
Bill Currie 5c0a55d818 Add some documentation for the brush code. 2010-10-13 20:52:06 +09:00
Bill Currie 9a4c9c506f Fix bbox calculation for rotating brush entities. 2010-10-13 20:52:06 +09:00
Bill Currie b91568bbdd More non-canonical checks in PlaneTypeForNormal. 2010-10-13 20:52:06 +09:00
Bill Currie c9eb679c41 Make PlaneTypeForNormal const-correct. 2010-10-13 20:52:06 +09:00
Bill Currie 7fca21837a fix some errors found by valgrind 2010-10-13 20:52:05 +09:00
Bill Currie 56fb4d9a22 allow safe bsp freeing
any memory the bsp thinks it does not own will not be freed
2010-10-13 20:52:05 +09:00
Bill Currie 99d8ea22b4 fix uninitialized data
In the process of testing the changes to WriteBSPFile, it was found that
the data being supplied to it contained uninitialized values.
2010-10-13 20:52:05 +09:00
Bill Currie f4042c5b91 Make the bsp disk data structures type size independent.
However, this assumes float is always 32 bits.

Also use size_t for the *size fields in bsp_t and clean up the mess.
2010-10-13 20:52:05 +09:00
Bill Currie e9bd9a4baa Move QFS_CreatePath() to Sys_CreatePath(). 2010-08-25 13:52:24 +09:00
Bill Currie a51e888a1b Nuke MAX_OSPATH and clean up the mess. 2010-08-25 13:31:08 +09:00
Bill Currie 06cbb941f1 "make dist" fixes
Since we're using git now, having a rule to make ChangeLog is reasonable.

Also, forgot the remove mention of qfcc.lsm.in when I nuked the file.
2010-08-21 13:09:53 +09:00
Bill Currie 1442273a8f more opaque correctness 2010-08-20 12:58:37 +09:00
Bill Currie 669771681a split up and modernize configure.ac
Most of the guts of configure.ac have been moved to config.d and are then
brought in by m4_include. This will make maintaining configure.ac much easier.

Also drop use of PROGRAM and VERSION, using PACKAGE_NAME, PACKAGE_VERSION, and
on occasion, PACKAGE_STRING instead, and clean out some old files we no longer
need.
2010-08-19 15:01:43 +09:00
Bill Currie a703956553 split up most of bsp5.h and get things compiling again 2010-08-18 17:52:13 +09:00
Bill Currie d045045693 get the grouping right 2010-08-11 23:42:14 +00:00
Bill Currie f04bc64ef1 clean up a bunch of doxygen warnings 2010-08-11 23:41:30 +00:00
Bill Currie 0dfff8fd58 ignore stuff 2010-08-07 10:42:09 +00:00
Bill Currie 7ef81cae31 and the rest of the changes before actually working on the new parser 2010-08-05 03:39:26 +00:00
Bill Currie 9a4258b5c5 rename "map" to "map_script" in anticipation of a better map parser 2010-08-05 03:30:13 +00:00
Bill Currie 17d84613a9 found a test file lurking around 2010-08-05 02:36:51 +00:00
Bill Currie 51a32f4f87 minor comment about scoping in traditional mode 2010-02-22 13:44:52 +00:00
Bill Currie fac98536f0 make sure def->space points to the space the def's location is allocated from to ensure that freeing the location works properly (fixes the bogus address triggered by prozaccoop: thanks, phrosty) 2010-02-22 13:11:41 +00:00
Bill Currie 56d01ce267 found an uncontrollable warning 2010-02-20 12:01:49 +00:00
Bill Currie 7b9a682942 Make qfpreqcc a little noisier when qfcc can't be run. 2010-01-16 02:05:05 +00:00
Bill Currie 997102fea8 audit the usage of "only"
There are still a few iffy places (notably around certain prepositions), but
the relevant sentences are now much easier to read.
2010-01-13 06:42:26 +00:00
Bill Currie 01452ce5c8 no -P for qccx escapes 2010-01-13 06:35:04 +00:00
Bill Currie 8abb9a69aa remove support for an optional = in struct/union declarations 2010-01-13 06:34:32 +00:00
Bill Currie 21b3a87535 more todos 2010-01-13 06:33:31 +00:00
Bill Currie a18b01973e add some qfcc todos 2010-01-13 06:32:37 +00:00
Bill Currie 0d4a2938a2 forgot to check for errors 2010-01-13 06:32:10 +00:00
Bill Currie ae4fc3147d allow '*pointer' expressions 2010-01-13 06:31:41 +00:00
Bill Currie 22776f9ffd get double indirection working
do not try to optimize the output of the sub-dereference in a dereference
2010-01-13 06:31:06 +00:00
Bill Currie ad5459b51a mention the "no-" prefix in the code options section 2010-01-13 06:26:50 +00:00
Bill Currie ccb8faf6ef produce a warning for the likes of "x - x & y" 2010-01-13 06:26:18 +00:00
Bill Currie 40fefff847 fix incorrect users for temps resulting from casting the result of ?:
There are probably other situations, but I'll fix them as they show up.
2010-01-13 06:25:06 +00:00
Bill Currie d558444b77 make temp def problems a little easier to understand
o  set return_address whenever a temp def is requested, no only when it is
    actually created.
 o  make the notices about temp reference counting problems a little more
    readable and include the name of the temp
2010-01-13 06:24:29 +00:00
Bill Currie c2dcc20d2a allow (constant) expressions in array declarators 2010-01-13 06:23:32 +00:00
Bill Currie a6c504936c get \8 and \9 right 2010-01-13 06:23:02 +00:00
Bill Currie 401040ced0 document the gold digits 2010-01-13 06:22:33 +00:00
Bill Currie 07b61aa23f missed \0-9 for the gold numbers from qccx 2010-01-13 06:22:01 +00:00
Bill Currie 36fe939ea5 don't hang when processing \{N} escape sequences and fix a comment 2010-01-13 06:21:29 +00:00
Bill Currie 090527eaec silence some debug output 2010-01-13 06:20:22 +00:00
Bill Currie c3f47efb07 add --qccx-escapes to resolve the conflicts in escape sequences and document the escape sequences supported by qfcc. 2009-12-25 07:59:25 +00:00
Bill Currie c9484af217 don't seg when extracting conchars (it's not really a miptex) 2009-12-21 14:03:33 +00:00
Bill Currie dcf593291d fix for new bison (must be explicit with the type of $$ in mid-rule actions) 2009-12-21 05:53:00 +00:00
Bill Currie c8b7622e0e reduce the amount of memory wasted when generating the output file 2009-12-20 12:19:16 +00:00
Bill Currie c542138300 more not-really initialized data 2009-12-20 11:54:19 +00:00
Bill Currie 1dc4683961 ensure all instructions are fully initialized. 2009-12-20 11:09:58 +00:00
Bill Currie b14fcccd8f get qf compiling with gcc 4.4 2009-12-19 10:54:23 +00:00
Bill Currie e2355aa357 add --extract-hull which produces C structures for the clipping hull (currently only hull 0) 2009-03-18 03:28:34 +00:00
Bill Currie bfee029249 set current_func while building the init function to avoid issues with code expecting current_func to be set. 2008-08-01 22:55:10 +00:00
Bill Currie 9ac15436d9 More docs.
Enhance qfprogs qfo debugging.

Make sure functions marked as extern don't emit anything. Fixes the segfault
when building klik.
2008-08-01 13:54:24 +00:00
Bill Currie 23e3fc0cb8 document most of obj_file.h (and a few other doc tweaks) 2008-08-01 00:47:38 +00:00
Bill Currie fe95805d86 various gcc 4.3 fixes 2008-07-19 05:40:57 +00:00
Bill Currie 7c4a0725e1 clean out unused functions 2007-10-08 09:50:02 +00:00
Bill Currie ac99aaf0d3 use "#line N file" instead of "# N file" (seems to be more portable) 2007-09-16 07:03:12 +00:00
Bill Currie 3431fea56d Make sure initialized locals that are treated as constants don't get relocated. Fixes the airfist bug in prozac 2007-09-15 07:58:39 +00:00
Bill Currie 3e50aae01f "print" command for dumping values in the progs and add return type info to the debugging information 2007-09-15 07:47:31 +00:00
Bill Currie 01b71c40d2 fix some issues when using --advanced with v6only 2007-09-15 07:44:31 +00:00
Bill Currie ca0bbd909c correctly save and restore the parameters when calling +initialize. fixes the segfault in the qwaq test. 2007-06-09 13:44:06 +00:00
Bill Currie 4973a38cce speed up PF_VarString a little 2007-06-09 09:43:21 +00:00
Bill Currie ce2ba56c47 gcc 4.2 clean 2007-05-31 05:58:33 +00:00
Bill Currie 201f01b66c hopefully speed up byte swaps 2007-05-26 23:18:46 +00:00
Bill Currie 411d6517cb make duplicate macros behave the same as qcc in traditional mode (ie, bump the number anyway) 2007-05-15 07:51:04 +00:00
Bill Currie fee656eb68 warn about (and otherwise ignore) duplicate frame macros 2007-05-15 07:36:56 +00:00
Bill Currie 79fdf8db80 allow .imm symbols to be written in traditional mode 2007-05-15 07:25:47 +00:00
Bill Currie 680bc22697 better error reporting for redefines 2007-05-13 09:02:51 +00:00
Bill Currie a521a78adb catch more uninitialized variables 2007-05-13 08:39:07 +00:00
Bill Currie c81c074660 mark used constants as used 2007-05-13 08:20:19 +00:00
Bill Currie b356f1cbd4 remove some debug 2007-05-13 07:06:59 +00:00
Bill Currie f4d40650f5 make initialized locals behave similarly to qcc in traditional mode (note, they're not exactly the same) 2007-05-13 06:21:54 +00:00
Bill Currie 787a9bc182 forgot to increment the tail number (would have made a mess of maps with more than one duplicate of a texture name) 2007-05-09 10:08:35 +00:00
Bill Currie 2149aefe67 not so sure that one's needed 2007-05-08 03:24:49 +00:00
Bill Currie 5798c9d67a wasn't catching the precedence inversion in (x - x & y) even though it was caught for (x & y - x). 2007-05-08 02:54:50 +00:00
Bill Currie 0e78c3f6da make STORAGEX lower priority than UNARY so casts work 2007-05-07 23:44:45 +00:00
Bill Currie 9609fe8ca4 bloody hell 2007-05-07 15:04:06 +00:00
Bill Currie 839c00b97b back out the large packet/entity related patches. they've provent to be troublesome and it seems FTE has a better solution. 2007-05-07 14:58:53 +00:00
Bill Currie 8f365c4512 that wasn't supposed to go in 2007-05-07 12:18:54 +00:00
Bill Currie 72daa2fd2b add some sounds to the menus (not yet finished) 2007-05-07 12:17:12 +00:00
Bill Currie 6a019f1859 make sure all miptex entries have a unique name in the generated wad file so no textures get lost when extracting. 2007-05-07 02:06:03 +00:00
Bill Currie 243e816759 extract miptex "properly": lays out all 4 mip levels in the one image, rather than producing a mess :) 2007-05-07 01:04:47 +00:00
Bill Currie 7ba41632d9 snax's fixes to clean up most of the shift/reduce conflicts 2007-04-28 08:49:07 +00:00
Bill Currie 3deee307a8 check for uninitialized variables in return statements 2007-04-28 08:48:01 +00:00
Bill Currie a376e6f86d make control of progdefs.h generation saner 2007-04-28 05:40:22 +00:00
Bill Currie e8e2d3a6e5 make "local" optional 2007-04-28 05:20:47 +00:00
Bill Currie cfd71b87c4 clean up some warnings that I think I wasn't testing for 2007-04-28 05:17:55 +00:00
Bill Currie bf15d0cb6a docs on advanced/traditional 2007-04-12 10:53:38 +00:00
Bill Currie cfeb14fecf warn when local variables are redecalred in the same scope. This won't normally cause problems, but it can save a lot of grief when converting traditional quakec code. 2007-04-12 09:39:42 +00:00
Bill Currie 8c31f12d5c cover the two compilation modes 2007-04-12 07:42:22 +00:00
Bill Currie 93ee2e489b more vc2005 patches from phrosty 2007-04-11 22:03:36 +00:00
Bill Currie 8353bb5886 add a section on compilation modes. only half done, though 2007-04-11 15:10:00 +00:00
Bill Currie 7c938b3e91 follow some of the roff rules... 2007-04-11 12:04:53 +00:00
Bill Currie bac4096708 some doc improvements as pointed out by Hikaru and add --relocatable to the long options 2007-04-11 10:48:04 +00:00
Bill Currie 82aaa87b6b fast access to code, warning and notice help. 2007-04-10 14:53:44 +00:00
Bill Currie 992aa04994 Forgot to coorect the adjustment of the def's offset (yet I knew I was supposed to :P) 2007-04-10 14:03:34 +00:00
Bill Currie f48d41848a *sigh* 2007-04-10 13:11:42 +00:00
Bill Currie 15dc16ff64 put in stubs for help for -C, -W and -N 2007-04-10 13:10:53 +00:00
Bill Currie 2e6ecd97c8 d'oh 2007-04-10 13:01:45 +00:00
Bill Currie 52d178b3be Add a code generation option, "local-merging", to control qfcc's merging of local variable blocks into one block. Defaults to on for advanced mode and off for traditional. 2007-04-10 13:00:21 +00:00
Bill Currie 4c4281c512 because builtin functions now get their params dumped to the debug symbols, @va_list needs to be initialized. 2007-04-10 09:10:09 +00:00
Bill Currie 30744a555e find the other place def_func relocs get emitted. I keep forgetting about the .y file when grepping source :P 2007-04-10 07:40:03 +00:00
Bill Currie 3b7c83a96f uncomment some lines that shouldn't have been commented (doesn't fix the bug, though) 2007-04-09 14:32:47 +00:00
Bill Currie 845b5ab2e2 don't write alias defs to the qfo 2007-04-09 14:25:44 +00:00
Bill Currie 642bb0f810 don't create a reloc for an external function 2007-04-09 14:06:12 +00:00
Bill Currie e53e9944b6 spew a lot of guff about relocs 2007-04-09 13:33:59 +00:00
Bill Currie 3cd01223dd don't try to fix up function refs too early. fixes klik's segfault on firing 2007-04-09 08:56:23 +00:00
Bill Currie a9678f1c06 dump globals direct from qfo 2007-04-09 07:47:51 +00:00
Bill Currie 48fdd0cb26 record the params for builtins, too. 2007-04-09 06:16:34 +00:00
Bill Currie 9509d0fd5e make qfo files typesize safe 2007-04-07 12:35:03 +00:00
Bill Currie 2399e79ca0 open all files in binary mode. ^Z is evil :P 2007-04-07 10:24:34 +00:00