Make sure that there is always a comma between T and V in property attributes.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35941 72102866-910b-0410-8b05-ffd578937521
Build with exceptions (fixes the issue with crashes where +initialize throws)

Start adding the tests to CMake.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35942 72102866-910b-0410-8b05-ffd578937521
Make it possible to disable building the tests.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35943 72102866-910b-0410-8b05-ffd578937521
Added more test cases.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35944 72102866-910b-0410-8b05-ffd578937521
Enabled property attribute test, fixed failure.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35945 72102866-910b-0410-8b05-ffd578937521
Update opts to work with LLVM trunk (3.3).



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35946 72102866-910b-0410-8b05-ffd578937521
Restored r35794 changes (that were removed in r35893) but applied them to the 
GNUMakefile rather than the Makefile.

This fixes segfaults in programs compiled with Clang using -fobjc-nonfragile-abi 
on Linux x86-32, for a GNUmakefile-based build with GNUstep Make active. 


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35950 72102866-910b-0410-8b05-ffd578937521
Implemented the new exception ABI, and a load of tests for it.  This is used by
clang trunk if -fobjc-runtime-1.7 is specified and provides significantly
better interoperability with foreign exceptions.

Note: Most of the exception tests will not pass with gcc or clang < 3.3.  They
test things that are impossible to implement quite correctly with the
GCC-compatible exception ABI.

Also updated the release notes to reflect recent improvements.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35952 72102866-910b-0410-8b05-ffd578937521
Tidied up tests, made them work with make as well as ninja generators for
CMake.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35953 72102866-910b-0410-8b05-ffd578937521
Added test of forwarding mechanisms.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35954 72102866-910b-0410-8b05-ffd578937521
Fix a lock-order reversal where one thread calls some dtable-manipulating
function while another is initializing.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35955 72102866-910b-0410-8b05-ffd578937521
Add missing test.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35956 72102866-910b-0410-8b05-ffd578937521
Add another missing file...



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35961 72102866-910b-0410-8b05-ffd578937521
Fix clang's stupid warning to work around a bug in OS X headers...



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35962 72102866-910b-0410-8b05-ffd578937521
Fix (and add test case for) a bug where objc_allocateClassPair() failed if the
superclass had not yet been loaded.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35966 72102866-910b-0410-8b05-ffd578937521
Cleaner version of the last fix.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35967 72102866-910b-0410-8b05-ffd578937521
Install the message.h header.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35968 72102866-910b-0410-8b05-ffd578937521
Fix the GOT-relative addressing in 32-bit message sends.

Thanks to Banlu for helping track this down.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35970 72102866-910b-0410-8b05-ffd578937521
Fix the case where the number of selectors grows to more than 2^16 and we need
to fall back to 3-level dtables.  

Added a test case that registers far more selectors than a sane program
contains and tries to use them.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35971 72102866-910b-0410-8b05-ffd578937521
Move the selector table to being protected by a mutex for reads so that we can
recover memory from the smaller ones.  Selector lookups are not on the critical
path for message sends, so the cost of the extra memory is likely to be larger
than the cost of acquiring a lock in sel_getName().



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/libobjc2/trunk@35972 72102866-910b-0410-8b05-ffd578937521