Fred Kiefer
826db719cc
* Source/NSAffineTransform.m (-appendTransform:,
...
-prependTransform:): Fix bug in optimisation code by using a local variable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33716 72102866-910b-0410-8b05-ffd578937521
2011-08-11 07:27:52 +00:00
David Chisnall
4ea812deb4
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33714 72102866-910b-0410-8b05-ffd578937521
2011-08-09 08:44:06 +00:00
David Chisnall
6cdbd621be
Replace the implementations of NSFastEnumeration in NSConcrete{Hash,Map}Table with ones that work and don't cause people to dereference pointers that are set to random integer values.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33713 72102866-910b-0410-8b05-ffd578937521
2011-08-09 08:43:54 +00:00
David Chisnall
8a88a7f66e
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33705 72102866-910b-0410-8b05-ffd578937521
2011-08-07 18:01:35 +00:00
David Chisnall
8c89a86607
In -finalize, we're pretending to be the Objective-C runtime, so we need to
...
actually use isa directly, rather than the safe version. A better solution
would be to call object_dispose(), but this only works for objects created with
class_createInstance().
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33704 72102866-910b-0410-8b05-ffd578937521
2011-08-07 18:00:55 +00:00
David Chisnall
13de0e2a12
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33702 72102866-910b-0410-8b05-ffd578937521
2011-08-07 16:57:13 +00:00
David Chisnall
bb2e9d0627
When calling -.cxx_dealloc, look up the superclass before calling. This method
...
may destroy the receiver's class, if it's a user-generated one, so we can't
guarantee that it is valid after the call.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33701 72102866-910b-0410-8b05-ffd578937521
2011-08-07 16:56:58 +00:00
David Chisnall
92f5b363ed
Remove a reference to a nonexistent header.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33699 72102866-910b-0410-8b05-ffd578937521
2011-08-07 08:24:59 +00:00
David Chisnall
36a34cd78f
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33697 72102866-910b-0410-8b05-ffd578937521
2011-08-05 17:35:21 +00:00
David Chisnall
2d364a86ca
Bracket the runtime.h include in a check.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33696 72102866-910b-0410-8b05-ffd578937521
2011-08-05 17:34:47 +00:00
David Chisnall
3856032ebc
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33689 72102866-910b-0410-8b05-ffd578937521
2011-08-03 12:04:52 +00:00
David Chisnall
fa6f119996
Clean up NSRegularExpression, so that it compiles without warnings with or without ICU, but we don't pretend that we support things that we don't and silently return nonsense results to make debugging difficult for GNUstep users.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33688 72102866-910b-0410-8b05-ffd578937521
2011-08-03 12:04:27 +00:00
David Chisnall
682c9beb5b
Make base do unintuitive and stupid things in the name of Apple compatibility (hopefully Apple will fix their implementation in 10.7.something...).
...
Fix some tests.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33687 72102866-910b-0410-8b05-ffd578937521
2011-08-03 09:04:12 +00:00
Fred Kiefer
6dfb591252
Remove warnings generated by tests.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33686 72102866-910b-0410-8b05-ffd578937521
2011-08-03 08:41:26 +00:00
Fred Kiefer
b5d9750560
Small fixes on tests.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33681 72102866-910b-0410-8b05-ffd578937521
2011-08-02 08:52:15 +00:00
Fred Kiefer
00c8832228
Remove some of the compiler warnings on system without clang or ICU.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33680 72102866-910b-0410-8b05-ffd578937521
2011-08-02 08:33:33 +00:00
David Chisnall
86edfd0c2b
Remove accidentally-committed log statements.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33669 72102866-910b-0410-8b05-ffd578937521
2011-08-01 10:48:07 +00:00
David Chisnall
a5b1427e87
Add some out qualifiers to NSError** parameters, matching the OS X 10.7 API diffs. They seem to have missed a lot - this change should have been made on every NSError ** to stop ARC from using the complicated copy-and-writeback semantics, but only a small number of changes are documented. It's possible that this is just an error in the docs, so someone with 10.7 should check.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33668 72102866-910b-0410-8b05-ffd578937521
2011-07-31 19:12:01 +00:00
David Chisnall
dbe026608e
Ooops, should have been -> const id[].
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33667 72102866-910b-0410-8b05-ffd578937521
2011-07-31 18:37:12 +00:00
David Chisnall
8713e21d91
More ARC fixups: id* -> const id* in NSSet
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33666 72102866-910b-0410-8b05-ffd578937521
2011-07-31 18:34:40 +00:00
David Chisnall
2fabc5d951
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33663 72102866-910b-0410-8b05-ffd578937521
2011-07-31 16:19:41 +00:00
David Chisnall
aafdf366ea
Remove the duplicate definition of the NSObject protocol methods in the
...
NSObject class (redundant since they are implicitly added by the class adopting
the protocol, and stupid because there was already one copy-and-paste error
where they differed slightly). Also replaced all of the references to
nonexistent documentation with actual documentation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33662 72102866-910b-0410-8b05-ffd578937521
2011-07-31 16:19:21 +00:00
David Chisnall
6a17e2023d
Added ChangeLog entry from last commit
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33661 72102866-910b-0410-8b05-ffd578937521
2011-07-31 15:32:07 +00:00
David Chisnall
b85364de7e
Cleanup:
...
- (void)release;
to
- (oneway void)release;
so everything implementing -release actually implements the one declared in the NSObject protocol.
Start marking things that are unavailable in ARC mode as unavailable in ARC mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33660 72102866-910b-0410-8b05-ffd578937521
2011-07-31 15:31:39 +00:00
David Chisnall
12745b6fde
Don't export functions that use id if we're not in Objective-C mode. I'm not entirely sure what this gs_consume stuff does, since it's not documented, but it looks a lot like it might be nonsense - it's almost certainly broken in ARC mode, where this static inline function will be emitted as objc_release() and will free the object.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33652 72102866-910b-0410-8b05-ffd578937521
2011-07-27 18:03:22 +00:00
David Chisnall
87c717eaba
Added some tests for round-trips through NSNumber.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33650 72102866-910b-0410-8b05-ffd578937521
2011-07-27 08:57:30 +00:00
David Chisnall
a124b3a52a
Fix the 64-bit bug that Fred spotted.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33649 72102866-910b-0410-8b05-ffd578937521
2011-07-27 08:46:31 +00:00
David Chisnall
00259f1a7c
Tweak the weak tests so that they should still work, even if -base was compiled
...
with something that doesn't do a very good job of optimising autorelease
operations away.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33644 72102866-910b-0410-8b05-ffd578937521
2011-07-26 20:12:32 +00:00
David Chisnall
622f81ffc2
Add ChangeLog
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33643 72102866-910b-0410-8b05-ffd578937521
2011-07-26 20:10:39 +00:00
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