quakeforge/tools/qfcc/source
Bill Currie 36cf1f948e [qfcc] Add bypass scopes
Because the symbol tables for generic functions are ephemeral (as such),
they need to be easily removed from the scope chain, it's easiest if
definitions are never added to them (instead, they get added to the
parent symbol table). This keeps handling of function declarations or
definitions and their parameter scopes simple as the function gets put
in the global scope still, and the parameter scope simply gets
reconnected to the global scope (really, the generic scope's parent)
when the parameter scope is popped within a generic scope.
2024-12-11 03:06:50 +09:00
..
.indent.pro
algebra.c [qfcc] Apply suspenders and a belt to the dimension check 2024-09-24 11:17:01 +09:00
attribute.c [qfcc] Allow single-constant attribute values 2024-09-20 12:28:02 +09:00
class.c [qfcc] Use count for number of array elements 2024-11-17 15:27:10 +09:00
codespace.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
constfold.c [qfcc] Parse vector literals correctly 2024-09-03 20:50:31 +09:00
cpp.c [win] Fix some bitrot for building 2024-09-24 19:49:41 +09:00
dags.c [qfcc] Improve support for matrix types 2024-09-05 14:06:30 +09:00
debug.c [qfcc] Fix some glsl parsing issues 2024-09-01 17:02:42 +09:00
def.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
defspace.c [qfcc] Separate out backend function building 2024-11-03 16:58:10 +09:00
diagnostic.c Merge branch 'master' into wip-ruaspirv 2024-04-18 09:46:10 +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] Avoid (null) labels for dot graphs 2024-10-01 14:30:09 +09:00
dot_expr.c [qfcc] Add xvalue expressions and symbols 2024-12-08 18:59:40 +09:00
dot_flow.c [qfcc] Avoid (null) labels for dot graphs 2024-10-01 14:30:09 +09:00
dot_sblock.c [qfcc] Avoid (null) labels for dot graphs 2024-10-01 14:30:09 +09:00
dot_type.c [qfcc] Use count for number of array elements 2024-11-17 15:27:10 +09:00
dump_globals.c [qfcc] Use count for number of array elements 2024-11-17 15:27:10 +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 the type union anonymous 2024-08-16 17:23:29 +09:00
evaluate.c [qfcc] Clear current function for constexpr evaluation 2024-12-05 00:10:15 +09:00
evaluate_type.c [qfcc] Move type encoding defs into an array 2024-09-15 12:05:57 +09:00
expr.c [qfcc] Make new_call_expr non-const 2024-12-08 19:03:41 +09:00
expr_algebra.c [qfcc] Don't fold constants for algebra 2024-12-07 19:09:10 +09:00
expr_assign.c [qfcc] Add xvalue expressions and symbols 2024-12-08 18:59:40 +09:00
expr_binary.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
expr_bool.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
expr_call.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
expr_cast.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
expr_compound.c [qfcc] Implement compound initializers for spir-v 2024-11-17 22:45:18 +09:00
expr_construct.c [qfcc] Fix vector constructions from scalars 2024-12-05 16:11:59 +09:00
expr_dag.c [qfcc] Add xvalue expressions and symbols 2024-12-08 18:59:40 +09:00
expr_obj.c [qfcc] Clean up the local_expr global 2024-11-04 16:38:07 +09:00
expr_optimize.c [qfcc] Respect parentheses when scattering sums 2024-09-30 13:51:52 +09:00
expr_process.c [qfcc] Add xvalue expressions and symbols 2024-12-08 18:59:40 +09:00
expr_type.c [qfcc] Clean up some more bools 2024-12-05 00:10:15 +09:00
expr_unary.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
expr_vector.c [qfcc] Defer Ruamoko semantics processing 2024-12-07 02:38:00 +09:00
flow.c [qfcc] Use the called function for ruamoko progs 2024-11-18 03:42:26 +09:00
function.c [qfcc] Add bypass scopes 2024-12-11 03:06:50 +09:00
glsl-attribute.c [qfcc] Do basic error checking on layout qualifiers 2024-09-10 19:03:13 +09:00
glsl-block.c [qfcc] Assign indices to glsl block members 2024-11-21 19:18:13 +09:00
glsl-builtins.c [qfcc] Add bypass scopes 2024-12-11 03:06:50 +09:00
glsl-declaration.c [qfcc] Use a context object to hold current language 2024-12-07 23:55:48 +09:00
glsl-layout.c [qfcc] Clean up the errors for some layout qualifiers 2024-11-21 19:18:13 +09:00
glsl-parse.y [qfcc] Add bypass scopes 2024-12-11 03:06:50 +09:00
glsl-sub_comp.c [qfcc] Implement many glsl qualifiers as attributes 2024-09-09 20:01:06 +09:00
glsl-sub_frag.c [qfcc] Implement many glsl qualifiers as attributes 2024-09-09 20:01:06 +09:00
glsl-sub_geom.c [qfcc] Implement many glsl qualifiers as attributes 2024-09-09 20:01:06 +09:00
glsl-sub_tesc.c [qfcc] Implement many glsl qualifiers as attributes 2024-09-09 20:01:06 +09:00
glsl-sub_tese.c [qfcc] Implement many glsl qualifiers as attributes 2024-09-09 20:01:06 +09:00
glsl-sub_vert.c [qfcc] Implement many glsl qualifiers as attributes 2024-09-09 20:01:06 +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 Merge branch 'master' into wip-ruaspirv 2024-04-18 09:46:10 +09:00
Makemodule.am [qfcc] Defer Ruamoko semantics processing 2024-12-07 02:38:00 +09:00
method.c [qfcc] Split out the call related expression code 2024-11-04 20:28:30 +09:00
obj_file.c [qfcc] Use count for number of array elements 2024-11-17 15:27:10 +09:00
obj_type.c [qfcc] Use count for number of array elements 2024-11-17 15:27:10 +09:00
opcodes.c [qfcc] Correct a typo in a comment 2024-11-28 21:05:34 +09:00
options.c [qfcc] Start properly separating target code 2024-10-06 14:29:02 +09:00
pragma.c [qfcc] Separate out backend function building 2024-11-03 16:58:10 +09:00
pre-parse.y [qfcc] Use a context object to hold current language 2024-12-07 23:55:48 +09:00
qc-lex.l [qfcc] Use deferred semantics for quake pascal 2024-12-08 19:12:04 +09:00
qc-parse.y [qfcc] Add bypass scopes 2024-12-11 03:06:50 +09:00
qfcc.c [qfcc] Use a context object to hold current language 2024-12-07 23:55:48 +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] Use deferred semantics for quake pascal 2024-12-08 19:12:04 +09:00
qp-parse.y [qfcc] Add bypass scopes 2024-12-11 03:06:50 +09:00
reloc.c [qfcc] Use rua_loc_t for most location information 2023-11-06 14:25:20 +09:00
rua-declaration.c [qfcc] Use a context object to hold current language 2024-12-07 23:55:48 +09:00
shared.c [qfcc] Use a separate enum for glsl interfaces 2024-09-09 11:40:57 +09:00
statements.c [qfcc] Use raw symbols for field names 2024-12-08 00:03:12 +09:00
strpool.c [qfcc] Make save_string null-safe 2024-07-07 15:18:51 +09:00
struct.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
stub.c [qfcc] Clean up some overzealous const correctness 2024-11-21 08:30:47 +09:00
switch.c [qfcc] Remove convert_name 2024-12-07 18:35:01 +09:00
symtab.c [qfcc] Add bypass scopes 2024-12-11 03:06:50 +09:00
target.c [qfcc] Make max_params a code option 2024-10-11 10:01:45 +09:00
target_rua.c [qfcc] Use a context object to hold current language 2024-12-07 23:55:48 +09:00
target_spirv.c [qfcc] Defer Ruamoko semantics processing 2024-12-07 02:38:00 +09:00
target_v6.c [qfcc] Defer Ruamoko semantics processing 2024-12-07 02:38:00 +09:00
type.c [qfcc] Support type expressions in default_type 2024-12-11 02:46:47 +09:00
value.c [qfcc] Fix an overflow for matrix values 2024-12-05 00:22:38 +09:00