theraven
f133fa7eb8
Better ObjC++ support in runtime.h
15 years ago
theraven
99761c2877
More fixes to Makefile.clang.
...
Patch by Charlie Sharpsteen!
15 years ago
theraven
1d16930450
Fix missing semicolon.
...
Make Makefile.clang work
Patch by Charlie Sharpsteen.
15 years ago
theraven
38568fca57
Remove some dead code. Fix a bug when cloning objects with no associated references.
15 years ago
theraven
5d3c047fa2
Finished implementing JavaScript-style prototypes.
15 years ago
theraven
b54719abf1
Basic support for prototype-style object orientation (you can now add methods to an individual object).
15 years ago
theraven
55d86bba6c
Blocks cleanups.
15 years ago
theraven
6a27408e9e
Fix malloc() / free() imbalance.
15 years ago
theraven
908374672d
Make OBJC_SMALL_OBJECT_SHIFT / OBJC_SMALL_OBJECT_MASK constants.
15 years ago
theraven
8e34dccda9
Deprecate access to the isa pointer. This will become a hard error in future.
15 years ago
theraven
22e5aaf7b0
Add OBJC_SMALL_OBJECT_SHIFT macro.
15 years ago
theraven
f3d2b7034c
Small object + ARC tweaks.
15 years ago
theraven
2288ff54e3
Don't try to enable GC in ARC mode.
15 years ago
theraven
8af52846b7
Small object (hidden in a pointer) support.
15 years ago
theraven
f6d9318619
s/fifth/sixth
15 years ago
theraven
1fd4fe5854
Bump subminor version number
15 years ago
theraven
fceec26cb7
Fix bug assigning weak references.
15 years ago
theraven
0c6c31acec
Fix file locations for 1.5 release.
15 years ago
theraven
ae7cefe382
Disable GC by default (lots of people moan that it doesn't compile)
...
Update ANNOUNCE.
15 years ago
theraven
ffc661fe5c
Export capabilities for associated references and GC.
15 years ago
theraven
2d493697a6
Work around PyObjC's stupid abuse of the message-send-to-super mechanism.
15 years ago
theraven
3219a530d6
Don't call byref keep / dispose when they don't exist.
15 years ago
theraven
dfbf18cc67
Fixed <= bug in weak references. We're storing the EXTRA retain count, not the refcount.
15 years ago
theraven
61a7c53a08
Handle NULL arguments to block copy / release.
15 years ago
theraven
83db079968
Fix bug in fast path for class_getInstanceMethod()
15 years ago
theraven
65d6a8dfb5
When changing the size of structures, it's a good idea to make sure that you change everything that depends on those sizes too...
15 years ago
theraven
4e7b476aa6
Change [1] to [] for variable length structure elements (C99 - silences array out of bounds errors).
...
Added fields to the end of the class structure for strong / weak ivar bitmaps (not yet generated by any compiler).
Fixed definition of __sync_swap() so that it works on GCC again.
15 years ago
theraven
219f921bc3
Fix some bugs in class_getInstanceMethod()
15 years ago
theraven
e69ed0696d
Better recovery when things are done in the wrong order.
15 years ago
theraven
3754c9fdbe
Accidentally deleted class declaration for Protocol2. Add it back.
15 years ago
theraven
5448596ace
Update Makefile.
15 years ago
theraven
3a27521f57
Add flag for identifying modules that use ARC.
15 years ago
theraven
e0ae8ce474
Another 64-bit issue.
15 years ago
theraven
33864e9676
Fix int -> size_t, causing breakage on 64-bit big-endian platforms.
15 years ago
theraven
52fb301a45
Move return statement into the conditional, where it belongs.
15 years ago
theraven
e8583bf4ae
Updated README to give some more information about ARC.
15 years ago
theraven
0b9e0fd295
Added fast implementation of autorelease pools for ARC.
15 years ago
theraven
a255dcd2d1
...and fix dereferencing of NULL pointer introduced with last commit.
15 years ago
theraven
e7a6be5584
Tighten up loading of __weak variables slightly.
15 years ago
theraven
69e53c4cdb
Better test for presence of __sync_swap().
15 years ago
theraven
893b9bf958
Add guard if __has_feature is not defined.
15 years ago
theraven
d61e9b3209
Fix __weak references to blocks.
15 years ago
theraven
126aa409cb
op_and_fetch, not fetch_and_op!
15 years ago
theraven
663995f08c
Small cleanup. Use the ARC functions for retain / release / autorelease messages everywhere. This will make properties faster if we're using an ARC-compatible NSObject.
15 years ago
theraven
61bc10ad4c
Remove debugging line accidentally committed.
15 years ago
theraven
73891aaecc
Two small ARC fixes:
...
- Make objc_retain() check for stack blocks and implicitly copy them. This fixes the case where a block pointer is stored in an object-typed variable and is assigned.
- Tweak objc_retainAutoreleaseReturnValue() so that the ARC optimiser doesn't detect that the body looks like a call to objc_retainAutoreleaseReturnValue() and replace it with an infinitely recursive call.
The second fix now means that arc.m will compile with clang without producing a function that calls itself.
15 years ago
theraven
fce7c776b6
Tweak build to only enable optimisation in non-debug builds.
15 years ago
theraven
9b9c801805
Fix off-by-one error in buffer.h
15 years ago
theraven
9d6154041c
Make sure that autoreleased returned objects are destroyed when the autorelease
...
pool is destroyed. They were previously being destroyed on thread termination,
this ensures that their lifespan is predictable.
15 years ago
theraven
7155f174b7
Don't enable incremental collection. It seems to cause crashing.
15 years ago