1300 Commits (2deec335f642285235bb1b444a0877947a0501b9)
 

Author SHA1 Message Date
theraven 2cc96a6f7e Fix message forwarding by, for example, actually calling the public forwarding hook, instead of one that isn't exposed to GNUstep... 16 years ago
theraven a75064866a More tweaks to +load. Now defers +load a little bit more. 16 years ago
theraven 378c7d3a6c Crash in the caller, instead of in the message lookup, when the method does not exist and there is no forwarding hook. 16 years ago
theraven ac6f5835e0 Remember to run +load methods in categories, as well as classes. 16 years ago
theraven 65ec110a61 Make sure both protocol classes are available before resolving protocols. 16 years ago
theraven 7ac0904a1f Don't leak memory when throwing exceptions. 16 years ago
theraven 7d0d599241 Fix handling of cleanups while unwinding for exception throwing. 16 years ago
theraven fb474dd7f9 Removed hooks from runtime.h that are in hooks.h 16 years ago
theraven d3122bcfa4 Make sure BOOLs in class tests are always YES or NO.
Make self in +load the correct value (the class, not the metaclass).
16 years ago
theraven f4e7a7bf5c Return the correct thing to exception handlers. 16 years ago
theraven f375d20d7a Add support for catching C++ (and Java / Ada) exceptions in Objective-C. 16 years ago
theraven 121e14a3b8 Small cleanup of dtable code. 16 years ago
theraven 666c84c129 Test the correct class when resolving superclasses. 16 years ago
thebeing 11b7b2b23c Fix compilation issues. 16 years ago
theraven 9271591544 Remove GCC file that is no longer used. 16 years ago
theraven eb84a02e97 Reinstate legacy_malloc in the build, unless you disable legacy nonsense. 16 years ago
theraven b8543a1e13 Removed files that should have gone in the last commit. 16 years ago
theraven 07758fe521 Removed last bits of legacy code from libobjc2. Added new exception handling implementation. 16 years ago
theraven 0e374db1db Added support for type-dependent dispatch to libobjc2. 16 years ago
qmathe 79899f8a46 Fixed unresolved class list loss when the root class gets resolved.
Hence not all classes were previously resolved at load time.

Was breaking +forwardInvocation: because unresolved classes such as 
GSFFInvocation were not receiving +load right when gnustep-base was loaded.
16 years ago
thebeing e36200bb8b Fix division by zero bug triggered by pointers to opaque structs. 16 years ago
theraven f54132293b Remove debugging line from encoding2.c 16 years ago
theraven 8158ff0a7a Tweak fragile ABI test to account for alignment padding. 16 years ago
thebeing 673ae40779 64bit fixes. 16 years ago
theraven 77ed3977bc Added missing file. 16 years ago
theraven 627e8cb0dc Remove debugging lines left in by mistake in last commit. 16 years ago
theraven 779b28abeb Lots of tidying, removing legacy stuff. 16 years ago
theraven 1f7f5cbfab Added file missing in last commit. 16 years ago
theraven 4ee07676cc Added rewritten encoding parser. The functions that function pointers as arguments and parse compound types should be exposed via the public interfaces, or possibly moved to a separate library - they are generally useful. 16 years ago
ericwa cc260222da protocol.c: don't call init_protocols() with NULL 16 years ago
ericwa 9697c01c33 Remove remaining uses of class_get_class_method and class_get_instance_method, which were causing link errors. David: can you check that I didn't do anthing silly? Thanks. 16 years ago
theraven 75712d61a3 Made Object use sensible functions instead of ones that don't exist. 16 years ago
theraven b1b9baf382 Finished rewrite of message sending. Deleted lots of legacy stuff. 16 years ago
theraven 9dcfe43e69 Removed DLL entry point. The Win32 API docs say that this function is optional, and the implementation was doing exactly the same thing as if it was absent. High quality coding at its finest. 16 years ago
theraven bb8cafaa15 Finished rewriting the loader. It's now cleanly separated into logically-separate components, so there's a chance it might actually be maintainable... 16 years ago
theraven 7c72069fd9 Rewrote ABI compatibility testing. Makes it easier to define new, incompatible ABIs in future without breaking everything. 16 years ago
theraven 4ea82e14da Fixed hash functions.
Tweaked class resolve function to make sure that it keeps scanning the list as long as one or more classes is resolved while scanning it.
16 years ago
thebeing 13964517ef Small 64bit fix. 16 years ago
theraven fdc1f1e916 Removed more unused code. 16 years ago
theraven 67741f3f68 Removed hash.c - no longer used. 16 years ago
theraven de71ebb6b1 Rewritten class loading. 16 years ago
theraven a1329e22de A bit more class table tidying. 16 years ago
theraven 7f6f798074 Rewrote some of the class table code to be slightly cleaner. 16 years ago
theraven 3672f04ea3 Default to installing libobjc2 headers 16 years ago
qmathe 55a62b527f Removed unused variable that prevents compilation by being treated as an error 16 years ago
theraven 8a451d212c More dtable fixes - now the EtoileFoundation tests work when compiled with GCC too. Hopefully that's all of the irritating corner cases in category loading dealt with... 16 years ago
theraven e482b6986f More fixes for the new dtable. Now passing all of the EtoileFoundation tests, which do lots of things involving categories, so make a good stress test.
No longer installs headers by default.  This is because GNUstep Make notices when the objc headers have changed (because GNUstep includes them) and so reinstalling libobjc2 was requiring a complete recompile of anything that you tried to build, even if you only changed one line.  A better fix for this would be for install to use cmp or diff to check if the header has been modified before installing it, but I'm too lazy to do that right now.
16 years ago
theraven a692cbd4dd Fix some GCC warnings. Patch by TOM. 16 years ago
theraven a9bdab1f44 Reverted last commit - breaks the build with clang.
Fixed the definition of objc_msgSendSuper().

Tweaked the -dealloc implementation for hidden classes used for locking so that @synchronize(self) will work in a -dealloc method.
16 years ago
theraven 2efec09e39 Silence some warnings when compiling with GCC. Patch by TOM. 16 years ago