quakeforge/tools/qfcc/source
Bill Currie 544d7de1ec [qfcc] Implement @protocol(foo)
Unlike gcc, qfcc requires foo to be defined, not just declared (I
suspect this is a bug in gcc, or even the ObjC spec), because allowing
forward declarations causes an empty (no methods) protocol to be
emitted, and then when the protocol is actually defined, one with
methods, resulting in two different versions of the same protocol, which
comments in the gnu objc runtime specifically state is a problem but is
not checked because it "never happens in practice" (found while
investigating gcc's behavior with @protocol and just what some of the
comments about static instance lists meant).
2020-03-02 10:42:26 +09:00
..
.indent.pro
class.c [qfcc] Implement @protocol(foo) 2020-03-02 10:42:26 +09:00
codespace.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
constfold.c Generate default type expressions for folded booleans 2020-02-24 02:11:31 +09:00
cpp.c Replace system defines/includes with qfcc's 2020-02-19 02:35:09 +09:00
dags.c Make operand->type actual type instead of low-level 2019-06-17 23:38:34 +09:00
debug.c Change the naming of ALLOC's free-list. 2013-03-08 22:16:31 +09:00
def.c [qfcc] Remove type alias encoding 2020-03-01 16:13:18 +09:00
defspace.c Implement aligned allocations 2020-02-15 23:49:12 +09:00
diagnostic.c Fix incorrect usage of signed verbosity 2020-02-26 17:15:52 +09:00
disassemble.c Dump operand contents for verbosity > 1. 2012-12-12 16:21:33 +09:00
dot.c Number dot dumps to help identify order 2019-06-16 19:12:18 +09:00
dot_dag.c Remove dead nodes from dags. 2012-12-25 17:07:58 +09:00
dot_expr.c Implement %% (true modulo) support in qfcc 2020-02-16 11:57:58 +09:00
dot_flow.c Better flow dot dump "scripting". 2018-08-23 20:07:11 +09:00
dot_sblock.c Make it possible to dump statement blocks in a flow graph. 2012-12-11 11:31:55 +09:00
dump_globals.c [qfcc] Remove type alias encoding 2020-03-01 16:13:18 +09:00
dump_lines.c Move the debug info out of progs_t 2020-02-25 20:07:29 +09:00
dump_modules.c Move to using an in-memory form of ddef_t 2020-02-22 22:33:44 +09:00
dump_strings.c Fix qfo strings dumping 2020-02-23 15:08:31 +09:00
emit.c Make operand->type actual type instead of low-level 2019-06-17 23:38:34 +09:00
expr.c [qfcc] Implement @protocol(foo) 2020-03-02 10:42:26 +09:00
expr_assign.c Implicitly cast unadorned floating point constants 2020-02-23 22:28:54 +09:00
expr_binary.c Allow non-short-circuited logic to work 2020-02-24 02:25:28 +09:00
expr_bool.c Improve code for short-circuited float logic 2020-02-24 02:14:44 +09:00
flow.c Use tempop_visit_all for flow and dags 2019-06-16 16:56:39 +09:00
function.c [qfcc] Report errors for objects in function decls 2020-03-01 17:44:13 +09:00
grab.c Handle all modelgen commands. 2018-08-20 00:11:02 +09:00
idstuff.c [qfcc] Correct a typo 2020-03-01 17:28:51 +09:00
linker.c [qfcc] Fix infinite loop in linker 2020-02-29 20:13:25 +09:00
Makefile.am Move short-circuit boolean code to its own file 2020-02-24 01:20:24 +09:00
method.c [qfcc] Fix some curly space 2020-03-01 13:53:18 +09:00
obj_file.c [qfcc] Remove type alias encoding 2020-03-01 16:13:18 +09:00
obj_type.c [qfcc] Remove type alias encoding 2020-03-01 16:13:18 +09:00
opcodes.c Make pr_obcode.c mostly thread safe 2020-02-26 01:20:28 +09:00
options.c Allow constant initialized globals in advanced code 2020-02-23 22:51:00 +09:00
pragma.c Allow pragmas to have arguments 2020-02-15 23:49:12 +09:00
problem_with_nil.txt Document some problems with nil 2019-06-09 22:29:51 +09:00
qc-lex.l Implicitly cast unadorned floating point constants 2020-02-23 22:28:54 +09:00
qc-parse.y [qfcc] Handle protocol forward declarations 2020-03-01 19:37:40 +09:00
qfcc.c Fix writing of frames files when not requested 2020-02-24 00:07:48 +09:00
qfpreqcc Better handling of progs.dat and line numbers. 2012-11-15 15:04:51 +09:00
qfprogs.c Make a bunch of count things positive-only 2020-02-25 21:23:13 +09:00
qp-lex.l Do a pure/const/noreturn/format attribute pass. 2018-10-09 12:42:21 +09:00
qp-parse.y Clean up redundant type parameter to initialize_def. 2018-10-15 22:11:20 +09:00
reloc.c Change the naming of ALLOC's free-list. 2013-03-08 22:16:31 +09:00
shared.c Rename the storage_class_t enum values. 2012-12-02 10:11:30 +09:00
statements.c Add a missed opcode conversion for %% 2020-02-16 12:10:09 +09:00
strpool.c Add support for \? to qc strings. 2018-08-19 19:31:52 +09:00
struct.c [qfcc] Catch static class instances in structs 2020-02-29 21:09:24 +09:00
stub.c Encode function parameter alignment 2020-02-16 17:10:43 +09:00
switch.c Make binary_expr fold constants 2019-06-10 00:36:13 +09:00
symtab.c Start work on simple names in symbol tables 2019-06-06 07:01:44 +09:00
type.c [qfcc] Remove type alias encoding 2020-03-01 16:13:18 +09:00
value.c Implement double constants 2020-02-15 23:49:12 +09:00