Richard Frith-MacDonald
92bfb8666e
partial nonfragile api support
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/branches/reorg@29601 72102866-910b-0410-8b05-ffd578937521
2010-02-13 09:16:24 +00:00
Richard Frith-MacDonald
6c84f23ae1
Coimplete operation queue implementation
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29508 72102866-910b-0410-8b05-ffd578937521
2010-02-08 10:34:27 +00:00
Richard Frith-MacDonald
93b94d87b2
Fix error in class for zombie
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29259 72102866-910b-0410-8b05-ffd578937521
2010-01-11 11:29:44 +00:00
Richard Frith-MacDonald
b1976d23bb
avoid compiler warnings
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29258 72102866-910b-0410-8b05-ffd578937521
2010-01-11 11:23:03 +00:00
Gregory John Casamento
6797a06652
Conditionally compile weak attribute.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29159 72102866-910b-0410-8b05-ffd578937521
2009-12-22 22:12:56 +00:00
David Chisnall
c19a717b67
Added call to objc_create_block_classes_as_subclasses_of() in NSObject's +load method. This is called as soon as NSObject is loaded and creates the _NSBlock family of classes, which are statically allocated in the runtime but not statically initialised. If you create blocks without linking GNUstep-base, the isa pointer in the block will point to a class that has all of its fields set to 0.
...
Any blocks will have their isa pointer set to the two classes statically allocated in libobjc, but these classes can't be used for message lookup (or introspection) until after the call. This means that you can't send messages to blocks until after NSObject's +load method has been called. This shouldn't be a problem in most code, but if you use __attribute__((constructor)) instead of a +load method then be careful about sending messages to blocks (you can still call them as normal).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29144 72102866-910b-0410-8b05-ffd578937521
2009-12-20 16:59:41 +00:00
Richard Frith-MacDonald
5a6ce46276
tidy
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29049 72102866-910b-0410-8b05-ffd578937521
2009-11-23 18:07:25 +00:00
David Chisnall
9eb8d1d49b
Added fall-back line for forwarding. Now -forwardingProxyForSelector: should work on all runtimes, with all ABIs, it will just be painfully slow on the GCC runtime and the legacy ABI.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29048 72102866-910b-0410-8b05-ffd578937521
2009-11-23 16:43:08 +00:00
Richard Frith-MacDonald
19796a1465
Documentation generation improvments
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29047 72102866-910b-0410-8b05-ffd578937521
2009-11-23 09:42:18 +00:00
Wolfgang Lux
acb28bb1c2
Prevent potential deadlock in multithreaded programs due to an
...
allocation lock that was never unlocked.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28859 72102866-910b-0410-8b05-ffd578937521
2009-10-20 05:25:04 +00:00
Richard Frith-MacDonald
640ae938c6
Cleanups and minor bugfixes for new code.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28665 72102866-910b-0410-8b05-ffd578937521
2009-09-12 07:37:00 +00:00
David Chisnall
47eab60ed8
Added implementations of the hooks provided by the new runtime. This brings
...
NSObject up to feature-parity with the OS X 10.5 implementation when using the
new runtime and up to feature-parity with the 10.6 implementation if you are
using the new runtime and compiling with clang.
Also removes the objc_mutex_wibble stuff from NSObject in favour of just using
NSLocks (which, with the new implementation, are now faster than using
objc_mutex_stuff).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28657 72102866-910b-0410-8b05-ffd578937521
2009-09-10 20:14:42 +00:00
David Chisnall
0fc392ad98
* Source/NSObject:
...
- Tweaked NSObject to use atomic ops with LLVM as well as gcc (this
probably isn't actually needed)
- Fixed SIGFPE problem on FreeBSD using proper interfaces instead of
an asm hack.
* Removes various mframe things from being compiled when ffcall/libffi is
used (mframe.m, NSConnection.m, NSInvocation.m)
* Turned a nested function in make_strings.m into a macro.
Tested by Gregory - blame him for any breakage...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28462 72102866-910b-0410-8b05-ffd578937521
2009-08-15 21:44:21 +00:00
Richard Frith-MacDonald
9d4d268acd
Fix failed commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28434 72102866-910b-0410-8b05-ffd578937521
2009-08-04 06:13:37 +00:00
Riccardo Mottola
f3723a5426
Atomic increment and decrement functions for m68k
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28310 72102866-910b-0410-8b05-ffd578937521
2009-05-29 23:10:15 +00:00
Fred Kiefer
d2b68390e5
* Source/NSObject.m: Correct asm for PPC.
...
Patch by Eric Wasylishen <ewasylishen@gmail.com>
* Source/NSObject.m: Add support for new gcc atomic build
ins. Currently still disabled.
Patch by David Chisnall <theraven@sucs.org>
M Source/NSObject.m
M ChangeLog
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28268 72102866-910b-0410-8b05-ffd578937521
2009-05-04 20:07:56 +00:00
Richard Frith-MacDonald
d3398a8044
Fix swizzle
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28222 72102866-910b-0410-8b05-ffd578937521
2009-04-15 08:31:14 +00:00
Richard Frith-MacDonald
79b93a4901
more GC improvements
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28220 72102866-910b-0410-8b05-ffd578937521
2009-04-15 08:03:19 +00:00
Richard Frith-MacDonald
5921606e39
gc improvements
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28192 72102866-910b-0410-8b05-ffd578937521
2009-04-10 08:25:03 +00:00
Adam Fedor
fd2132310b
Revert previous patch (David to fix up later).
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28174 72102866-910b-0410-8b05-ffd578937521
2009-04-03 14:56:41 +00:00
Richard Frith-MacDonald
c6937301b8
Cleanups suggested/provided by David Chisnall
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28160 72102866-910b-0410-8b05-ffd578937521
2009-03-31 15:49:42 +00:00
Richard Frith-MacDonald
057818ab06
use weak pointers for siblings
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28128 72102866-910b-0410-8b05-ffd578937521
2009-03-24 10:53:38 +00:00
Richard Frith-MacDonald
971de91d62
Implement OSX10.5 NSMapTable API
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28086 72102866-910b-0410-8b05-ffd578937521
2009-03-16 10:54:59 +00:00
Richard Frith-MacDonald
d2e2eda24c
GC tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28063 72102866-910b-0410-8b05-ffd578937521
2009-03-10 17:12:47 +00:00
Richard Frith-MacDonald
8687a2ed40
gc tweak
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28050 72102866-910b-0410-8b05-ffd578937521
2009-03-08 14:29:06 +00:00
Richard Frith-MacDonald
18511be325
Remved some unused code.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28047 72102866-910b-0410-8b05-ffd578937521
2009-03-06 11:01:42 +00:00
Richard Frith-MacDonald
24d43481a8
Updates for 10.5 API changes
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27962 72102866-910b-0410-8b05-ffd578937521
2009-02-23 20:42:32 +00:00
Richard Frith-MacDonald
d2fa82f877
MacOS-X compatibility fix for GC
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27845 72102866-910b-0410-8b05-ffd578937521
2009-02-11 10:11:33 +00:00
Richard Frith-MacDonald
0d75fb5f66
fix for bug #25543
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27830 72102866-910b-0410-8b05-ffd578937521
2009-02-10 12:49:06 +00:00
Richard Frith-MacDonald
6bccff5fc7
GC changes for MacOS-X compatiblity
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27630 72102866-910b-0410-8b05-ffd578937521
2009-01-19 11:00:33 +00:00
Richard Frith-MacDonald
b830b55dee
Change finalization to match MacOS-X
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27581 72102866-910b-0410-8b05-ffd578937521
2009-01-12 18:36:37 +00:00
Richard Frith-MacDonald
952af9c197
garbage collection fixups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27578 72102866-910b-0410-8b05-ffd578937521
2009-01-12 12:48:46 +00:00
Richard Frith-MacDonald
0ac29f22e7
Add check of method types in -methodSignatureForSelector:
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27135 72102866-910b-0410-8b05-ffd578937521
2008-11-26 09:20:34 +00:00
Richard Frith-MacDonald
c4a2f62ad0
Applied patch #6677
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27080 72102866-910b-0410-8b05-ffd578937521
2008-11-17 13:45:32 +00:00
Richard Frith-MacDonald
b2b14398d2
allow developers more time to adapt to LGPLv3
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26606 72102866-910b-0410-8b05-ffd578937521
2008-06-08 10:38:33 +00:00
Richard Frith-MacDonald
0dca6da5fb
Update atomic increment/decrement
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26369 72102866-910b-0410-8b05-ffd578937521
2008-03-20 14:47:08 +00:00
Richard Frith-MacDonald
62559023b9
Update to GPL3 and LGPL3
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25482 72102866-910b-0410-8b05-ffd578937521
2007-09-14 11:36:11 +00:00
Richard Frith-MacDonald
76378a7c6b
Fix typo and add cast to avoid compiler warnings
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24770 72102866-910b-0410-8b05-ffd578937521
2007-03-05 17:04:14 +00:00
Richard Frith-MacDonald
771bca1872
fix error in declaration on mingw
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24768 72102866-910b-0410-8b05-ffd578937521
2007-03-05 16:13:06 +00:00
Richard Frith-MacDonald
ab05881864
work around bug in mingw headers
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24767 72102866-910b-0410-8b05-ffd578937521
2007-03-05 16:09:46 +00:00
Richard Frith-MacDonald
d259822e2b
avoid some compiler warnings
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24765 72102866-910b-0410-8b05-ffd578937521
2007-03-05 16:02:25 +00:00
Richard Frith-MacDonald
9bfdfd9269
Try using atomic increment/decrement for after retain/release.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24764 72102866-910b-0410-8b05-ffd578937521
2007-03-05 15:41:09 +00:00
Richard Frith-MacDonald
4c6d361454
ock contention fix added.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24715 72102866-910b-0410-8b05-ffd578937521
2007-02-28 06:24:13 +00:00
Adam Fedor
a112e29296
Apply BSD FPU fix on only x86
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24404 72102866-910b-0410-8b05-ffd578937521
2007-01-23 16:04:29 +00:00
Matt Rice
92f3abe02e
* Source/NSObject.m: Fix typo.
...
* Headers/Foundation/NSException.h: Export
NSObjectInaccessibleException.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24165 72102866-910b-0410-8b05-ffd578937521
2006-11-28 01:20:46 +00:00
Richard Frith-MacDonald
688192ff19
Fix documentation version numbering
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@24034 72102866-910b-0410-8b05-ffd578937521
2006-11-06 13:05:52 +00:00
Richard Frith-MacDonald
0ebe68ae48
More code tidyups and NSError updates.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23921 72102866-910b-0410-8b05-ffd578937521
2006-10-20 10:56:27 +00:00
Richard Frith-MacDonald
fd98041ec7
Experiment with function visibility ... try caching locale dictionary to be
...
accessed from a function yet invisible outside the base library even when
caching is done in the Additions subproject.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23903 72102866-910b-0410-8b05-ffd578937521
2006-10-18 15:36:52 +00:00
Richard Frith-MacDonald
eae859d1c7
Updates to reduce global namespace pollution. Plenty more remaining.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23795 72102866-910b-0410-8b05-ffd578937521
2006-10-09 14:00:01 +00:00
Richard Frith-MacDonald
a00f8e94c7
Thread safety fixup
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23408 72102866-910b-0410-8b05-ffd578937521
2006-09-07 11:47:45 +00:00