quakeforge/tools/qfcc/source
Bill Currie 6bfb1f37f0 [qfcc] Rework macro expansion
Macros now store their arguments and have a cursor pointing to the next
token to take from their expansion list. While not checked yet, this
will make avoiding recursive macro invocations much easier. More
importantly, it's a step closer to correct argument expansion (though
token pasting is currently broken).
2023-11-03 13:54:08 +09:00
..
.indent.pro
algebra.c [qfcc] Give mono-group multivec types structs 2023-09-30 16:33:14 +09:00
attribute.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
class.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
codespace.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
constfold.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
cpp.c [qfcc] Add macro support for __FILE__ and __LINE__ 2023-11-01 16:19:39 +09:00
dags.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
debug.c [qfcc] Implement #include and search paths 2023-10-25 21:07:50 +09:00
def.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
defspace.c [qfcc] Ensure progs defs are sorted by address 2023-09-12 22:26:30 +09:00
diagnostic.c [qfcc] Silence report function for preprocessor-only 2023-10-24 22:01:03 +09:00
disassemble.c [qfprogs] Create a stack for disassembly of locals 2023-09-12 22:21:55 +09:00
dot.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
dot_dag.c [qfcc] Skip dag dependency lines for leaf nodes 2023-09-19 11:47:28 +09:00
dot_expr.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
dot_flow.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
dot_sblock.c [qfcc] Make it a little easier to see extra info 2021-12-27 14:15:51 +09:00
dot_type.c [gamecode] Rename ev_pointer to ev_ptr 2022-01-18 14:36:06 +09:00
dump_globals.c [qfcc] Support 32-bit and 64-bit handle types 2023-10-02 23:33:37 +09:00
dump_lines.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
dump_modules.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
dump_strings.c [qfprogs] Dump hex for non-ascii chars 2022-12-10 21:53:00 +09:00
emit.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
evaluate.c [qfcc] Support implicit typing for new_value_expr 2023-10-20 20:51:19 +09:00
expr.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
expr_algebra.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
expr_assign.c [qfcc] Implement macro recording and defined() 2023-10-23 19:00:30 +09:00
expr_binary.c [qfcc] Fix vector ops after preprocessor changes 2023-10-30 22:46:43 +09:00
expr_bool.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
expr_cast.c [qfcc] Support implicit typing for new_value_expr 2023-10-20 20:51:19 +09:00
expr_compound.c [qfcc] Clean up implicit int exprs 2023-10-19 22:52:17 +09:00
expr_dag.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_obj.c [qfcc] Catch some error expressions 2023-10-02 14:46:42 +09:00
expr_optimize.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
expr_vector.c [qfcc] Support implicit typing for new_value_expr 2023-10-20 20:51:19 +09:00
flow.c [qfcc] Set a flowvar's minimum size based on usage 2023-09-11 22:59:40 +09:00
function.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
grab.c [util] Record allocated blocs for ALLOC 2023-03-05 18:31:30 +09:00
idstuff.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
linker.c [qfcc] Ensure progs defs are sorted by address 2023-09-12 22:26:30 +09:00
Makemodule.am [qfcc] Add the preprocessor files to BUILT_SOURCES 2023-10-30 23:17:08 +09:00
method.c [qfcc] Fix some memory errors 2023-10-02 21:14:14 +09:00
obj_file.c [qfcc] Support 32-bit and 64-bit handle types 2023-10-02 23:33:37 +09:00
obj_type.c [qfcc] Fix some memory errors 2023-10-02 21:14:14 +09:00
opcodes.c [qfcc] Always initialize Ruamoko opcodes 2023-09-01 14:40:05 +09:00
options.c [qfcc] Separate preprocess only and preprocess output 2023-10-31 08:42:28 +09:00
pragma.c [qfcc] Update pragma handling for the preprocessor 2023-10-25 09:25:00 +09:00
pre-parse.y [qfcc] Ensure macros expand for #elif 2023-11-03 13:48:38 +09:00
qc-lex.l [qfcc] Rework macro expansion 2023-11-03 13:54:08 +09:00
qc-parse.y [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
qfcc.c [qfcc] Detect errors in module finalization 2023-10-30 13:51:45 +09:00
qfpreqcc Better handling of progs.dat and line numbers. 2012-11-15 15:04:51 +09:00
qfprogs.c [qfprogs] Create a stack for disassembly of locals 2023-09-12 22:21:55 +09:00
qp-lex.l [qfcc] Update line directive handling 2023-10-25 12:22:33 +09:00
qp-parse.y [qfcc] Switch the parsers and lexers to full reentrant 2023-10-12 23:49:37 +09:00
reloc.c [util] Record allocated blocs for ALLOC 2023-03-05 18:31:30 +09:00
shared.c [qfcc] Use dags for many expressions 2023-09-25 16:57:15 +09:00
statements.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
strpool.c [qfcc] Implement #include and search paths 2023-10-25 21:07:50 +09:00
struct.c [qfcc] Use generated tag for reporting errors 2023-10-28 08:45:27 +09:00
stub.c [qfcc] Be more const-correct with expressions 2023-10-02 14:46:39 +09:00
switch.c [qfcc] Use a prefix for qc tokens 2023-10-24 19:50:31 +09:00
symtab.c [qfcc] Implement macro recording and defined() 2023-10-23 19:00:30 +09:00
type.c [qfcc] Use a hash table for types 2023-10-30 15:38:43 +09:00
value.c [qfcc] Check alignment when looking for immediates 2023-10-02 21:14:14 +09:00