David Chisnall
48e1b94ef8
Change the order of the retain count and the padding, so the retain count is
...
always the word before isa.
Switch to using the correct kind of alignof (the ABI alignment in structures,
not the preferred alignment of the type - this stops us from allocating 4 bytes
of padding on x86-32 where there is no need for any)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33642 72102866-910b-0410-8b05-ffd578937521
2011-07-26 20:08:10 +00:00
David Chisnall
7698b8d176
64-bit fix in last commit.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33641 72102866-910b-0410-8b05-ffd578937521
2011-07-26 19:16:14 +00:00
David Chisnall
c0f08f202a
Use the small object support in libobjc2 trunk for 31 / 61-bit signed NSNumbers on 32 / 64-bit platforms respectively. Still to do: add an NSSmallFloat equivalent for 64-bit platforms, storing a float.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33639 72102866-910b-0410-8b05-ffd578937521
2011-07-26 19:05:43 +00:00
David Chisnall
9895dac736
Remove an NSLog() line I left in the test by mistake.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33638 72102866-910b-0410-8b05-ffd578937521
2011-07-26 18:42:13 +00:00
Quentin Mathe
9cb22639d9
Fixed missing oneway qualifier on -release return type.
...
Recent Clang trunk versions complain about it.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33634 72102866-910b-0410-8b05-ffd578937521
2011-07-26 10:47:16 +00:00
Fred Kiefer
ae18c2fee0
* Source/NSJSONSerialization.m: Get this file to compile with
...
standard gcc settings fro GNUstep.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33633 72102866-910b-0410-8b05-ffd578937521
2011-07-25 20:30:39 +00:00
David Chisnall
ba409ee07b
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33632 72102866-910b-0410-8b05-ffd578937521
2011-07-25 15:51:16 +00:00
David Chisnall
c1cca9a336
Added NSJSONSerialization (10.7) implementation. The code path reading from an NSInputStream is not well tested - please try and break it!
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33631 72102866-910b-0410-8b05-ffd578937521
2011-07-25 15:50:51 +00:00
David Chisnall
d1ab6b2dba
Don't delete the global lock - we may still need it!
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33630 72102866-910b-0410-8b05-ffd578937521
2011-07-25 14:32:44 +00:00
David Chisnall
acd62d77ff
Removed debugging NSLog() that was accidentally committed.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33629 72102866-910b-0410-8b05-ffd578937521
2011-07-25 12:51:24 +00:00
Fred Kiefer
716586a5cc
Fix small bug introduced when switching to Macros.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33627 72102866-910b-0410-8b05-ffd578937521
2011-07-25 10:58:38 +00:00
David Chisnall
f65a7c5bda
Add some explicit casting where required in NSConcretePointerFunctions.h
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33626 72102866-910b-0410-8b05-ffd578937521
2011-07-24 22:12:59 +00:00
Fred Kiefer
254aa22792
Try to clean up after last commit.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33625 72102866-910b-0410-8b05-ffd578937521
2011-07-24 20:47:36 +00:00
David Chisnall
155e17d050
Added stuff from last commit to news file.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33623 72102866-910b-0410-8b05-ffd578937521
2011-07-24 13:26:10 +00:00
David Chisnall
05429eeeb6
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33622 72102866-910b-0410-8b05-ffd578937521
2011-07-24 13:10:41 +00:00
David Chisnall
d2ea054c26
Lots of little fixes to make -base compile with -Werror (now builds without warnings).
...
Richard: I'm unsure about three of these, which were fixes in memset() calls in:
- NSConcreteMapTable.m
- NSConcreteHashTable.m
- Additions/NSData+GNUstepBase.m
Please can you check them? I think they are intended to zero the entire object
(rather than the first word), but the lack of comments makes me unsure.
Most changes were just tweaks to variable types. I've also removed some dead code from NSInvocation. This was small group of things that were marked for internal use only, but not actually referenced in the code anywhere.
Other improvements:
- NSArray / NSDictionary fixed up to use the 10.7 (ARC-friendly) prototypes.
- getObjects:andKeys: implemented for NSDictionary (10.5 method)
- NSPointerArray and NSHashTable now properly support weak objects.
- Tests for weak objects in collections.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33621 72102866-910b-0410-8b05-ffd578937521
2011-07-24 13:09:22 +00:00
David Chisnall
f2a54242a7
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33618 72102866-910b-0410-8b05-ffd578937521
2011-07-23 16:16:21 +00:00
David Chisnall
bc37adfb0c
Add support (and test) for weak keys and values in NSMapTable. This support should work in GC mode. It also works if the runtime supports ARC, even if the compiler does not use this support.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33617 72102866-910b-0410-8b05-ffd578937521
2011-07-23 16:16:01 +00:00
David Chisnall
3e3d12b661
Added read / write barrier support to GSIMap.h. These define macros for reading and writing keys and writing values.
...
These are currently unused - the next commit will make NSMapTable use them.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33612 72102866-910b-0410-8b05-ffd578937521
2011-07-23 13:14:20 +00:00
David Chisnall
2f3fffdea9
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33611 72102866-910b-0410-8b05-ffd578937521
2011-07-23 12:19:51 +00:00
David Chisnall
40456f7787
Remove the zone pointer from objects. Now we always query the zones to find the relevant pointer. Zones are still supported, but we now optimise for the case where they are not used.
...
To disable zone support completely, NSAllocateObject() should ignore the zone and NSDeallocateObject() should skip the zone lookup.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33610 72102866-910b-0410-8b05-ffd578937521
2011-07-23 12:19:19 +00:00
David Chisnall
018fab87bd
Missing part of the NSArray update.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33609 72102866-910b-0410-8b05-ffd578937521
2011-07-23 12:02:04 +00:00
David Chisnall
24d2d9bad2
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33608 72102866-910b-0410-8b05-ffd578937521
2011-07-22 16:08:04 +00:00
David Chisnall
d323a291d8
Change id* -> id[] for OS X 10.7 compatibility in NSArray. This change is required for ARC: now, id* means pointer to a single object, id[] means array.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33607 72102866-910b-0410-8b05-ffd578937521
2011-07-22 16:07:23 +00:00
David Chisnall
2b6608b7fc
Added changelog for last string of commits.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33606 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:39:39 +00:00
David Chisnall
51446f39de
I give up. No brain left.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33605 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:37:38 +00:00
David Chisnall
df82f8b96c
Third try.
...
[NSException raise: GSNotEnoughCoffeeException];
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33604 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:34:08 +00:00
David Chisnall
eb32254242
Add missing #import.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33603 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:27:04 +00:00
David Chisnall
4b027a2106
Stub for NSRegularExpression when a compatible version of ICU is not present.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33602 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:23:11 +00:00
David Chisnall
6b632d32d4
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33601 72102866-910b-0410-8b05-ffd578937521
2011-07-21 13:18:21 +00:00
David Chisnall
d9fda65728
Added NSRegularExpressionSearch (10.7) support to NSString.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33600 72102866-910b-0410-8b05-ffd578937521
2011-07-21 13:17:27 +00:00
Eric Wasylishen
5c802d5d57
* Source/NSNumberFormatter.m
...
(-attributedStringForObjectValue:withDefaultAttributes:):
Guard against initializing an NSAttributedString with a nil string.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33596 72102866-910b-0410-8b05-ffd578937521
2011-07-21 01:43:07 +00:00
Eric Wasylishen
e626936660
* Source/GSAttributedString.m: Throw an exception if the string object
...
passed to -initWithString:attributes: doesn't respond to -length, or if
it is nil. This is the same behaviour as OS X.
* Source/NSAttributedString.m (-init): Call -initWithString:attributes:
with @"" instead of nil, since passing nil now causes an exception
to be thrown.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33595 72102866-910b-0410-8b05-ffd578937521
2011-07-21 01:23:08 +00:00
Richard Frith-MacDonald
12dee189f3
try to ensure that including objc/runtime.h always works to get the new API.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33583 72102866-910b-0410-8b05-ffd578937521
2011-07-19 09:38:51 +00:00
Richard Frith-MacDonald
4a5cb96bef
For the avoidance of confusion, remove references to obsolete header.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33562 72102866-910b-0410-8b05-ffd578937521
2011-07-15 13:53:45 +00:00
Richard Frith-MacDonald
44979bb7f4
fix faulty assert
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33560 72102866-910b-0410-8b05-ffd578937521
2011-07-15 13:46:51 +00:00
Richard Frith-MacDonald
497cb2af93
ssh handshake improvements and consmetic tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33535 72102866-910b-0410-8b05-ffd578937521
2011-07-12 11:40:15 +00:00
David Chisnall
a64f21744d
Do the things from the last commit in the correct order.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33523 72102866-910b-0410-8b05-ffd578937521
2011-07-11 15:12:47 +00:00
David Chisnall
c2d351a0d2
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33522 72102866-910b-0410-8b05-ffd578937521
2011-07-11 14:31:55 +00:00
David Chisnall
6893ce1a95
Lazily initialize POSIX threads, matching OS X behaviour and stopping us from crashing when calling autorelease from a thread that was not previously registered explicitly (yuck!)
...
Also do some quite hacky (and not totally correct) things to try to make sure that we aren't confused into thinking that the first NSThread is the main thread, if it's created on a separate thread. Currently only supported on FreeBSD and OpenBSD.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33521 72102866-910b-0410-8b05-ffd578937521
2011-07-11 14:31:36 +00:00
David Chisnall
72b55444fb
Added some tests for lazy allocated thread behaviour.
...
These show deviation from OS X behaviour (the first test passes by accident - it's actually doing the wrong thing in two different ways that cancel each other out).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33520 72102866-910b-0410-8b05-ffd578937521
2011-07-11 14:07:16 +00:00
David Chisnall
c425bca5d4
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33518 72102866-910b-0410-8b05-ffd578937521
2011-07-11 12:37:06 +00:00
David Chisnall
26b91d9bcd
[NSNumber -init] should not destroy itself when called as [super init]. This behaviour was breaking anything that subclassed NSNumber in user code (e.g. PyObjC).
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33517 72102866-910b-0410-8b05-ffd578937521
2011-07-11 12:36:04 +00:00
Fred Kiefer
866c1dfcb4
* Source/GSLocale.m (GSLanguageFromLocale): Handle local "C.UTF-8"
...
correctly. Needed for Cygwin.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33516 72102866-910b-0410-8b05-ffd578937521
2011-07-11 11:55:35 +00:00
Fred Kiefer
ef1ce8744b
* config/config.ffi.c: Move declaration of g_dbl to begin of function.
...
Patch by Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33515 72102866-910b-0410-8b05-ffd578937521
2011-07-11 11:30:50 +00:00
Fred Kiefer
9c39943894
Support the OpenSuse key TIMEZONE in /etc/sysconfig/clock.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33512 72102866-910b-0410-8b05-ffd578937521
2011-07-11 09:35:54 +00:00
Wolfgang Lux
f9f1f879f4
Override NSObject +zone to ensure that -zone returns a valid zone
...
pointer when it is called on a class object.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33498 72102866-910b-0410-8b05-ffd578937521
2011-07-10 14:48:26 +00:00
David Chisnall
6bf1350874
Silence type errors by declaring the correct superclass of GSPlaceholderString.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33481 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:32:59 +00:00
David Chisnall
540e690dc5
Don't DESTROY() the placeholder string - that doesn't destroy it (since it overrides -release to do nothing), it just makes it unreachable.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33480 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:32:05 +00:00
David Chisnall
99141c2dc1
Fix a memory leak that valgrind spotted.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33479 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:30:10 +00:00