1362 Commits (main)
 

Author SHA1 Message Date
theraven 395c5fe220 Revert changes to sync.m, now that the function that it was calling is more robust. 15 years ago
theraven 28e6960441 Make object_getIndexedIvars() more robust against compiler bugs. 15 years ago
theraven e22f66bfae And, it seems, clang is really insistent that Class is an opaque type... 15 years ago
theraven fa2e7a9d95 Note to self: type svn commit in the correct window. 15 years ago
theraven 5c925929b4 Work around a bug in clang that incorrectly reports the size of a class. 15 years ago
theraven 0ec21b99bf Added 1.2 release announcement. 15 years ago
theraven 94e5f7b344 Return "nil" instead of nil from class_getName with a nil argument. This is stupid (what happens if you have a class called nil?) but it is what OS X does. 15 years ago
theraven 2e3b19b735 Ugh, made the same mistake I spent an entire lecture telling my students not to make. Feeling stupid. 15 years ago
theraven 4a3326f2fd Fix class_getMethodImplementation() semantics for Apple compatibility (returns forwarding selector IMP, doesn't actually do the forwarding). 15 years ago
theraven 5574585b0f Don't load the same class twice. 15 years ago
thebeing 39ec489d16 Fix non gnustep-make Makefile. 15 years ago
theraven ff915fc373 Added a really ugly hack to work around the painfully broken register allocator in GCC that caused the compiler to crash when attempting to compile blocks_runtime.m. 15 years ago
theraven 91e9758fda Add lots of checks for NULL-pointer arguments to runtime functions. 15 years ago
theraven caa4a7253c Some memory management fixes to the blocks runtime. 15 years ago
theraven 4e3cacf997 Comment out some unused variables. 15 years ago
theraven cf7d127f66 Fix enumeration mutation function prototype to match what clang expects (id instead of void* argument). 15 years ago
theraven 618003649d Made sync enter / exit functions return int (0). This is how their prototypes are declared on OS X, although neither clang nor gcc actually generates code that tests the return value... 15 years ago
theraven e0d80861b5 Added some documentation. 15 years ago
theraven dda2e03871 Whitespace cleanup. 15 years ago
theraven 8c966c461b Return the forwarding IMP from get_imp if required. 15 years ago
theraven 61a9379c9c Encodings of structures in ivars include the encoding of the field names (this is actually really nice: we could - in theory - expose structure field members via KVC, as an extension). This case was not correctly handled by libobjc2. 15 years ago
theraven 63c2c0ce73 Added NULL checks to class_respondsToSelector() 15 years ago
theraven e76143d006 And, for symmetry, remove an UNLOCK() that wasn't needed... 15 years ago
theraven af90153d7f And fix the same bug in the other place. 15 years ago
theraven b9f9ce3bba Fix missing UNLOCK() in hash table. 15 years ago
theraven 8db63b976f Initial work on developer mode (allows classes to be replaced at run time with new versions, by cooperating IDEs). This support is part of ongoing work to provide fix-and-continue functionality with Clang / Cling and LanguageKit. 15 years ago
theraven 39c9d21867 Remove use of macro that doesn't exist anymore... 15 years ago
theraven bde6bf0e14 Fix truncated comment in header and 'worse than useless' macro.
Both issues pointed out by Jens Ayton.
15 years ago
theraven ff3f7be5fc Added 1.1 announcement. Committed some work-in-progress clang-specific build stuff (don't use this, it doesn't work correctly yet). 15 years ago
theraven 4ab4b4033b Bumped version to 1.1 15 years ago
theraven 661d406a8c Added property structure copy functions. 15 years ago
ericwa a7ea477400 libobjc2: put libobjc compatibility functions in runtime.h marked __attribute__((deprecated)) 15 years ago
theraven 14ccd9b0d3 Don't rely on constructor attribute - depending on undefined orderings is bad. 15 years ago
theraven e70d00a76d Restore accidentally deleted toydispatch.h. 15 years ago
theraven a83428b883 Move toydispatch into libobjc2.
Some build system tidies.

Add -retain / release to Protocol.

Initial work on clang-specific makefile.
15 years ago
theraven b5f4782dbf Tidy up the block code slightly. 15 years ago
theraven 786b34875e Removed line that should not have been committed. 15 years ago
theraven 5519421c57 Apparently the BLOCK_HAS_DESCRIPTOR flag now means something else... 15 years ago
theraven 37606d1936 Improvements to the Makefile. Patch by Pete French. 15 years ago
theraven 2e2856ce73 Build a static library from the Makefile.
Patch by Pete French.
15 years ago
theraven 299e6806b5 Fix build with the Makefile. 15 years ago
qmathe 9dbf872f33 Fixed crash when resolving user-allocated classes (e.g. KVO) revealed by r31482.
objc_resolve_class() does ((Class)objc_getClass((char*)cls->isa->isa))->isa;
but cls->isa->isa was a metaclass object and not a C string if the class was 
user-created. objc_allocateClassPair() has been changed to set the 
meta-metaclass as a C string and not an object, so that objc_getClass() does 
not return Nil.
15 years ago
theraven f66a69561a Fix metametaclass setup. 15 years ago
theraven 76bb7762ff Properly resolve the metaclass's isa pointer. 15 years ago
qmathe c4cc8f4734 Added another @synchronized() test that results in a segfault 15 years ago
qmathe 10cb4f9b5c Corrected doc in few places to refer to @synchronized() and not @synchronize() 15 years ago
theraven 775021effa Don't leak dtables. 15 years ago
theraven 7be9f34619 Fixed @synchronize() with a class that has had an instance used for @synchronize(). 15 years ago
qmathe e1a756110f Tweaked libobjc2 test suite to compile once again on Mac OS X (all tests pass) 15 years ago
theraven 0328c5cca9 Added tarball location to libobjc2 ANNOUNCE. 15 years ago