quakeforge/tools
Bill Currie f025bd96d4 [qfcc] Copy self param when copying methods
Copying methods is done when adding protocols to classes (the current
use for adding regular methods is an incorrect solution to a different
problem). However, when a method is added to a class, the type of its
self parameter is set to be a pointer to the class. Thus, not only does
the method need to be copied, the self parameter does too, otherwise
the self parameter of methods added via protocols will have their type
set to be a pointer to the last class seen adding the protocol.

That is, if, while compiling the implementation for class A, but the
interface for class B is comes after the interface for class A, and both
A and B add protocol P, then all methods in protocol P will have self
pointing to B rather than A.

@protocol P
-method;
@end

@interface A <P>
@end

@interface B <P>
@end

@implementation A
-method	{} // self is B, not A!
@end
2020-03-02 23:46:26 +09:00
..
3dfx_stub Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
bsp2img Fix a pile of automake deprecation warnings. 2013-11-24 13:11:50 +09:00
build_scripts Strip the executables. 2013-01-23 22:09:54 +09:00
carne Fix a pile of automake deprecation warnings. 2013-11-24 13:11:50 +09:00
cross Add support for 64bit windows via mxe (mingw). 2013-01-22 21:02:50 +09:00
cvs2cl audit the usage of "only" 2010-01-13 06:42:26 +00:00
Forge Handle quest format brushes. 2012-09-12 08:24:17 +09:00
gas2masm Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
gl_stub Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
io_mesh_qfmdl Clean up some export stuff 2019-08-20 16:52:43 +09:00
io_qfmap Fix some blender warnings. 2018-06-08 12:45:57 +09:00
misc Put my blender struts script in a safe place. 2012-02-22 17:47:16 +09:00
pak Fix a pile of automake deprecation warnings. 2013-11-24 13:11:50 +09:00
qfbsp Update for doxygen 1.8.16 2020-02-11 15:22:42 +09:00
qfcc [qfcc] Copy self param when copying methods 2020-03-02 23:46:26 +09:00
qflight Update for doxygen 1.8.16 2020-02-11 15:22:42 +09:00
qflmp Clean up usage of va_copy. 2016-01-03 21:16:23 +09:00
qfmodelgen Fix a pile of automake deprecation warnings. 2013-11-24 13:11:50 +09:00
qfspritegen Fix an unhealthy pile of gcc 8 warnings. 2018-08-20 00:05:00 +09:00
qfvis Do a pure/const/noreturn/format attribute pass. 2018-10-09 12:42:21 +09:00
quaketoascii Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
texpaint Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
wad Fix a pile of automake deprecation warnings. 2013-11-24 13:11:50 +09:00
wav Fix a pile of automake deprecation warnings. 2013-11-24 13:11:50 +09:00
Makefile.am [qwaq] Move from tools to ruamoko 2020-03-01 00:55:15 +09:00