Commit graph

265 commits

Author SHA1 Message Date
Riccardo Mottola
b5b9126290 Correct format specifier to char*
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40432 72102866-910b-0410-8b05-ffd578937521
2017-04-01 14:09:01 +00:00
Richard Frith-MacDonald
116e5f8211 add some more debug
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40058 72102866-910b-0410-8b05-ffd578937521
2016-08-10 13:44:13 +00:00
Richard Frith-MacDonald
06669a434a add --GNU-Debug=RMC to log remote method call handling
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40046 72102866-910b-0410-8b05-ffd578937521
2016-08-01 11:10:38 +00:00
Richard Frith-MacDonald
6f890a5095 added diagnostics
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40043 72102866-910b-0410-8b05-ffd578937521
2016-07-29 13:48:00 +00:00
Richard Frith-MacDonald
7622a2618e fix spelling errors / typos (patch by heintzmann.eric@free.fr)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39774 72102866-910b-0410-8b05-ffd578937521
2016-05-18 06:11:00 +00:00
Richard Frith-MacDonald
d40d219015 removal of garbage collection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39608 72102866-910b-0410-8b05-ffd578937521
2016-03-25 11:15:28 +00:00
Richard Frith-MacDonald
67e4c0581d standardise -setDebug: extension
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39554 72102866-910b-0410-8b05-ffd578937521
2016-03-17 08:12:45 +00:00
Richard Frith-MacDonald
62d2bcbabc changes for use of _WIN32 define on windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39492 72102866-910b-0410-8b05-ffd578937521
2016-03-09 13:16:16 +00:00
Richard Frith-MacDonald
f34325cbd0 avoid warning on old compiler
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39425 72102866-910b-0410-8b05-ffd578937521
2016-02-29 10:13:10 +00:00
Niels Grewe
28c824a78a Modify the interfaces of all collection classes to be compatible with the
new lightweight generics implemenation. (Newer MacOS X/iOS code assuming 
the presence of the generics annotations can otherwise not be compiled with
GNUstep). This should be well-behaved under clang and gcc both. 

Fix NSCache which was copying the cache keys when it really shouldn't
have. Added a few test cases for eviction behaviour.

Few smaller tweaks to avoid compiler warnings.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39406 72102866-910b-0410-8b05-ffd578937521
2016-02-22 21:04:18 +00:00
Richard Frith-MacDonald
4bce4d2978 Various updates
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38599 72102866-910b-0410-8b05-ffd578937521
2015-06-04 09:18:52 +00:00
Richard Frith-MacDonald
ecc874ab7c improve exception text .... more info when forwarding in wrong thread
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37883 72102866-910b-0410-8b05-ffd578937521
2014-05-16 06:30:51 +00:00
Richard Frith-MacDonald
974fa5d811 handle invalidation of connection while getting root proxy
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37768 72102866-910b-0410-8b05-ffd578937521
2014-03-26 07:56:09 +00:00
Riccardo Mottola
5d0ac374e4 Openbsd malloc.h warning fix.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37368 72102866-910b-0410-8b05-ffd578937521
2013-11-07 14:41:58 +00:00
Richard Frith-MacDonald
ed09c55959 leak detection improvements
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37003 72102866-910b-0410-8b05-ffd578937521
2013-08-22 15:44:54 +00:00
Richard Frith-MacDonald
b2d5fd280c Changes for 64bit clean printf format strings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36810 72102866-910b-0410-8b05-ffd578937521
2013-07-03 06:46:41 +00:00
Richard Frith-MacDonald
da4f7056ca printf style format tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36799 72102866-910b-0410-8b05-ffd578937521
2013-07-02 15:46:26 +00:00
Richard Frith-MacDonald
c2990900fd array index fix on 64bit systems
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35728 72102866-910b-0410-8b05-ffd578937521
2012-10-20 21:11:26 +00:00
David Chisnall
603f5410a8 Fix a few compiler warnings caused by type mismatches in NSLog statements.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35037 72102866-910b-0410-8b05-ffd578937521
2012-04-06 12:37:11 +00:00
Eric Wasylishen
6f803c1c70 * Source/NSUserDefaults.m:
* Source/NSConnection.m:
* Source/NSCharacterSet.m:
* Tools/make_strings/StringsFile.m:
* Tools/pl.m: Fix instances where NSNotFound is stored in or
compared to an unsigned or int variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34884 72102866-910b-0410-8b05-ffd578937521
2012-03-06 03:05:23 +00:00
Richard Frith-MacDonald
8e79a9764f avoid a few warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34665 72102866-910b-0410-8b05-ffd578937521
2012-01-30 11:31:40 +00:00
Richard Frith-MacDonald
70bbf8ce82 fix for #35164
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34355 72102866-910b-0410-8b05-ffd578937521
2011-12-24 13:14:46 +00:00
Richard Frith-MacDonald
0142bf0f8a tweak minor problems in last changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33994 72102866-910b-0410-8b05-ffd578937521
2011-10-14 16:19:37 +00:00
Richard Frith-MacDonald
9e8187eebf Fixup to get correct type information when handling an incoming message as
suggested by Fred.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33832 72102866-910b-0410-8b05-ffd578937521
2011-09-12 16:03:07 +00:00
David Chisnall
4cdea64975 Make -base compile almost without warnings again. Fixes:
- Using the correct format specifier
- Remove substringFromRange: (GNUstep extension) from NSString.h and use the non-deprecated version in -base.
- Delete definitions of methods that are the same in both a class and a category on that class (NSArray and NSObject).

Two files still have warnings:

- The GNUTLS stuff is using a load of deprecated APIs.
- xmlparse.m replaces a method using a category.  This method seems to always return nil.  Not sure what it's meant to do, or why it isn't a delegate of some kind.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33756 72102866-910b-0410-8b05-ffd578937521
2011-08-16 16:04:43 +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
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
Richard Frith-MacDonald
1a7e135434 fix possibly uninitialised variable
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33341 72102866-910b-0410-8b05-ffd578937521
2011-06-18 17:47:37 +00:00
Richard Frith-MacDonald
ba24ce0841 minor map/hash table compatibility tweaks and simplify notification center
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33210 72102866-910b-0410-8b05-ffd578937521
2011-05-31 06:46:17 +00:00
David Chisnall
7764740bdc Make -drain and -release in NSAutoreleasePool do the same thing (rather than one calling the other) in non-GC mode.
Replace all -release messages sent to autorelease pools with -drain.  In non-GC mode, these are equivalent.  In GC mode, these trigger a collection.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33143 72102866-910b-0410-8b05-ffd578937521
2011-05-27 11:48:44 +00:00
Richard Frith-MacDonald
8c89a47a8b fix includes for gcc-4.6
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33069 72102866-910b-0410-8b05-ffd578937521
2011-05-19 08:19:24 +00:00
Richard Frith-MacDonald
b2649e0526 old/new objc api updates
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33027 72102866-910b-0410-8b05-ffd578937521
2011-05-12 16:03:08 +00:00
Richard Frith-MacDonald
9f32aeb525 remove unused directory and obsolete comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32795 72102866-910b-0410-8b05-ffd578937521
2011-04-07 07:32:00 +00:00
Richard Frith-MacDonald
4918e76599 casts to keep compiler happy
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32733 72102866-910b-0410-8b05-ffd578937521
2011-03-29 09:40:14 +00:00
Richard Frith-MacDonald
c0979f8d17 64bit safety fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32731 72102866-910b-0410-8b05-ffd578937521
2011-03-29 08:16:02 +00:00
David Chisnall
2e1b6bafcb Added a really ugly hack that makes NSConnection work on 64-bit platforms, without depending on undefined behaviour. This is not the correct fix - that needs to be done by someone who understands the code a bit better than me. See mailing list post for details.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32727 72102866-910b-0410-8b05-ffd578937521
2011-03-28 23:56:31 +00:00
Richard Frith-MacDonald
d18e29dde8 avoid compiler warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32417 72102866-910b-0410-8b05-ffd578937521
2011-02-28 19:49:57 +00:00
Richard Frith-MacDonald
05e186ac65 fix gc heade rlocation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32388 72102866-910b-0410-8b05-ffd578937521
2011-02-27 17:53:14 +00:00
Richard Frith-MacDonald
61bc059d4a Cleanup ... avoid accessing the 'isa' variable directly.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32247 72102866-910b-0410-8b05-ffd578937521
2011-02-20 16:21:43 +00:00
Richard Frith-MacDonald
c7eeb1bb08 Use GSObjCRuntime functions for selector types until/unless we can get
a standard runtime API that handles them.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32240 72102866-910b-0410-8b05-ffd578937521
2011-02-20 07:58:11 +00:00
Richard Frith-MacDonald
7fa110e2c5 documentation fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32157 72102866-910b-0410-8b05-ffd578937521
2011-02-14 10:57:57 +00:00
Nicola Pero
30f098f9f8 Updated code to compile with GCC 4.6 and the new GNU Objective-C runtime
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31765 72102866-910b-0410-8b05-ffd578937521
2010-12-23 02:23:05 +00:00
David Chisnall
4488708e84 Fix a load of warnings from implicit function declarations. A lot were caused by ctype.h and string.h stuff being used everywhere in GNUstep but not included anywhere - they're now included in common.h (at least string.h should also be in Foundation.h - on OS X it is implicitly included via some chain of things from Foundation.h).
All of the sel_* stuff is now replaced with the newer APIs.  As a side-effect, a blob of code that was copied-and-pasted all over GNUstep has now been moved into ObjectiveC2 and just called.

Class posing with libobjc2 will now throw an exception, rather than just aborting.  



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31268 72102866-910b-0410-8b05-ffd578937521
2010-09-09 16:30:10 +00:00
David Chisnall
7a80adeb9b A huge blob of changes to make -base build with libobjc2, without using the old libobjc2 headers.
Most of these changes involve simply removing direct manipulation of any runtime structures and replacing them with runtime function calls.  For example class->name becomes class_getName(class) and so on.

libobjc2, like the Apple runtime, the NeXT runtime, and every version of the Objective-C spec, calls the class pointer in id isa.  A few files now have #define class_pointer isa at the top.  This line replaces class_pointer in the old GNU libobjc headers with isa so either class_pointer or isa can be used for accessing the class of an object.  Note: object_getClass() should be used in most cases because, in some future version of the runtime, this will skip things like lock classes and other hidden classes (e.g. KVO classes).

All of the old forwarding stuff has been removed.  Most of this stuff followed convoluted code paths that ended with an exception.  A few simply broke in exciting ways.  Hopefully no one has used them for the last ten years or so, but we can bring them back with some #ifndef stuff if they're really needed by anyone.

There is currently a bug in configure, which prevents dladdr() from being detected, so you need to manually tweak config.h to build - I have not fixed the fall-back code in objc-load.m to work with libobjc2, I just added a new version that uses the loader's functionality directly.  

Although -base now builds, it builds with a lot of warnings.  <string.h> is missing from a lot of files, so memcpy() and strlen() generate implicit function declaration warnings.  

Additionally, libobjc2 does still provide the sel_{get,register}_*() functions, but they're wrappers around the newer API ones.  These are deprecated and are not exposed in the headers.  Although they work, we should be replacing them with the libobjc2 versions as soon as possible.

This incorporates a patch by Eric.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31265 72102866-910b-0410-8b05-ffd578937521
2010-09-09 15:06:09 +00:00
Richard Frith-MacDonald
4e146f7ab9 Attempt leak fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@30168 72102866-910b-0410-8b05-ffd578937521
2010-04-15 16:27:23 +00:00
Richard Frith-MacDonald
00164a28ed Workaround for buggy runtime functions.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@30154 72102866-910b-0410-8b05-ffd578937521
2010-04-14 11:52:21 +00:00
Richard Frith-MacDonald
f784646663 generalize define from __MINGW32__ to __MINGW__
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@30001 72102866-910b-0410-8b05-ffd578937521
2010-03-19 12:10:11 +00:00
Richard Frith-MacDonald
20864d7e59 attempt memory leak fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29993 72102866-910b-0410-8b05-ffd578937521
2010-03-17 11:28:04 +00:00
Richard Frith-MacDonald
ddffb6eec3 include malloc.h for alloc() on platforms where it isn't in alloca.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29971 72102866-910b-0410-8b05-ffd578937521
2010-03-16 06:11:00 +00:00
Richard Frith-MacDonald
e43d625338 improve instance variable hiding
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29779 72102866-910b-0410-8b05-ffd578937521
2010-02-26 10:25:35 +00:00