ericwa
97c3ff4572
* Source/NSDistantObject.m: #ifdef to disable category
...
on Object was forgotten around the interface
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31280 72102866-910b-0410-8b05-ffd578937521
2010-09-09 22:18:01 +00:00
theraven
f392469c64
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
theraven
85549433db
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
theraven
605a42ed53
Fix the return type of NSDistantObject +autorelease to return id, not void. Type-dependent dispatch in libobjc2 discovered that some things are picking up this method signature by accident and calling NSObject's -autorelease with the wrong types.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31224 72102866-910b-0410-8b05-ffd578937521
2010-08-31 22:02:38 +00:00
rfm
fbbfb632c8
better cope with null selectors.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31178 72102866-910b-0410-8b05-ffd578937521
2010-08-17 18:36:46 +00:00
rfm
e1a528b485
avoid some compiler warnings
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31107 72102866-910b-0410-8b05-ffd578937521
2010-08-10 10:38:50 +00:00
rfm
1a6af09e33
remove a few obsolete, unused methods
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29785 72102866-910b-0410-8b05-ffd578937521
2010-02-27 06:53:43 +00:00
rfm
48070cb1ca
Build with non-fragile ivars.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29715 72102866-910b-0410-8b05-ffd578937521
2010-02-24 10:23:47 +00:00
rfm
53beb40301
deprecates some gnustep runtime wrappers
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29697 72102866-910b-0410-8b05-ffd578937521
2010-02-22 10:13:20 +00:00
rfm
d605c6f7b5
Simplify header inclusion
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29669 72102866-910b-0410-8b05-ffd578937521
2010-02-19 08:12:46 +00:00
rfm
7293e19429
avoid unnecessary requests for signatures to remote process
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29652 72102866-910b-0410-8b05-ffd578937521
2010-02-16 17:08:47 +00:00
rfm
f13d56d8ec
merge back reorganisation branch
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29615 72102866-910b-0410-8b05-ffd578937521
2010-02-14 10:48:10 +00:00
rfm
16ce1cd7b3
lrge changes to remove mframe
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28778 72102866-910b-0410-8b05-ffd578937521
2009-10-05 16:00:28 +00:00
rfm
14db1fcb9f
fixup indentaton.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28352 72102866-910b-0410-8b05-ffd578937521
2009-06-15 07:13:11 +00:00
gcasa
c4c9fe6097
Incorporated patch by David Chisnall.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28326 72102866-910b-0410-8b05-ffd578937521
2009-06-05 22:16:07 +00:00
rfm
f8441e1092
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
rfm
d304d9ee34
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
rfm
e0711a3b8d
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
rfm
cd46236028
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
rfm
9e7b96ab0e
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
rfm
f2398378e0
Some cleanup in preparation for next release.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22618 72102866-910b-0410-8b05-ffd578937521
2006-03-08 11:28:59 +00:00
CaS
8699af99c7
More sized type tidyups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22293 72102866-910b-0410-8b05-ffd578937521
2006-01-11 09:32:13 +00:00
CaS
bb1ce663a4
Tidy use of sized datatypes. Check for invalid asumption of interchangability
...
of int/long in encoder/decoder methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22291 72102866-910b-0410-8b05-ffd578937521
2006-01-11 08:37:16 +00:00
CaS
f57ca76cba
Fixes for 64bit systems .. mostly cosmetic avoidance of compiler warnings.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22282 72102866-910b-0410-8b05-ffd578937521
2006-01-10 10:29:11 +00:00
CaS
5af2d9d0a2
Spelling fixes
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21962 72102866-910b-0410-8b05-ffd578937521
2005-11-06 13:53:40 +00:00
fedor
1cb435da9a
* Remove objc/Protocol.h include from NSObject to avoid warnings
...
with conflicting method signatures.
* Headers/Foundation/NSConnection.h: Change Object categories
to NSObject.
* Source/NSConnection.m: Idem.
* Headers/Foundation/NSObject.h: Don't include objc/Protocol.h
add a few missing things.
* Source/NSDate.m ([NSDate -isEqual:]): Use isKindOfClass.
* Source/NSDistantObject.m, Source/NSProtocolChecker.m:
Include objc/Protocol.h
* Source/NSSerializer.m: Add method sig for performv::
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21322 72102866-910b-0410-8b05-ffd578937521
2005-06-17 14:51:57 +00:00
fedor
376e495dad
* Update FSF Address.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21245 72102866-910b-0410-8b05-ffd578937521
2005-05-22 03:32:16 +00:00
CaS
f92b8f24ef
Tidyups to avoid compiler warnings.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20863 72102866-910b-0410-8b05-ffd578937521
2005-03-07 11:19:34 +00:00
CaS
0708409c1b
Tidy up use of white space so we have it after if/for/while and not after (
...
or before ) or padding at end of line.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20773 72102866-910b-0410-8b05-ffd578937521
2005-02-22 11:22:44 +00:00
alexm
cf50088545
* Source/NSDistantObject.m: Make proxyLocation an enum tag, not a
...
variable.
* Source/NSFileManager.m (custom_strdup, append_file_to_path): Make
static.
* Source/NSString.m (-isEqual:): Clarify documentation.
* Source/NSUnarchiver.m (mapClassObject, mapClassName): Make static.
* Source/Additions/Unicode.m (GetDefEncoding): Add missing void in
the prototype.
* Tools/make_strings/make_strings.m (ParseFile): Remove spurious
static on the nested function add_arg_ch.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20163 72102866-910b-0410-8b05-ffd578937521
2004-09-27 21:32:45 +00:00
ayers
b803fe27a6
* Headers/Foundation/NSMethodSignature.h:
...
(NSArgumentInfo): Document limitations of NSArgumentInfo's
offset and registier information. Match size for NO_GNUSTEP.
(NSMethodSignature): Match ivar name with runtime information.
* Source/GSFFCallInvocation.m
* Source/GSFFIInvocation.m
* Source/NSInvocation.m
(gs_method_for_receiver_and_selector)
([-invokeWithTarget:]): Use GSGetMethod instead of deprecated
GSGetInstanceMethod and GSGetClassMethod.
* Source/NSConnection.m ([-_service_typeForSelector]): Ditto.
* Source/NSDistantObject.m ([+respondsToSelector]): Ditto.
* Source/NSObject.m ([+instanceMethodSignatureForSelector:])
([-methodSignatureForSelector:])
([+descriptionForInstanceMethod], [-descriptionForMethod]): Ditto.
* Source/NSProtocolChecker.m ([-methodSignatureForSelector]): Ditto.
* Source/NSProxy.m ([+methodSignatureForSelector])
([-methodSignatureForSelector]): Ditto.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19896 72102866-910b-0410-8b05-ffd578937521
2004-08-20 17:53:16 +00:00
alexm
a9cde13d8e
Fix forwarding of methods not in the proxies protocl if a protocol is set.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19826 72102866-910b-0410-8b05-ffd578937521
2004-08-05 00:03:30 +00:00
arobert
dbdfcfab37
added GSdoc comments to class, method, and function declarations; for some classes some comments were already in the source file (not the header), in which case further comments were added here; otherwise comments were put in the headers
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19588 72102866-910b-0410-8b05-ffd578937521
2004-06-22 22:40:40 +00:00
CaS
3828461015
Minor tidy up for methodForSelector:
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19183 72102866-910b-0410-8b05-ffd578937521
2004-04-25 11:08:52 +00:00
CaS
24c74732b4
Attempt to make conformsToProtocol work for DO
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19155 72102866-910b-0410-8b05-ffd578937521
2004-04-19 19:29:15 +00:00
CaS
b410ed6e5d
Fix for libffi based distributed objects (tested on macos-x)
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@18433 72102866-910b-0410-8b05-ffd578937521
2004-01-18 12:19:43 +00:00
CaS
ba1698ff9c
Updates for improved reference count management over DO.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17983 72102866-910b-0410-8b05-ffd578937521
2003-10-27 13:41:01 +00:00
CaS
b08343d175
Cleanups in preparation for experimental changes to retain/relase over DO.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17949 72102866-910b-0410-8b05-ffd578937521
2003-10-21 17:05:36 +00:00
ayers
38143e6e56
Various GSObjCRuntime usage cleanups.
...
See ChangeLog for details.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17533 72102866-910b-0410-8b05-ffd578937521
2003-08-24 23:07:41 +00:00
CaS
c12fefef3e
Hacks to work around compiler/runtime bugs with protocols.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17482 72102866-910b-0410-8b05-ffd578937521
2003-08-15 13:20:50 +00:00
ayers
73dc4cb9f6
Header reorganizsateion - Please refer to ChangeLog
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17407 72102866-910b-0410-8b05-ffd578937521
2003-07-31 23:49:32 +00:00
CaS
2c6ab181bd
iMinor fox for DO
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17266 72102866-910b-0410-8b05-ffd578937521
2003-07-20 18:43:35 +00:00
CaS
e247daffdc
Documentation
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17117 72102866-910b-0410-8b05-ffd578937521
2003-07-04 20:22:27 +00:00
CaS
996c1ebfb5
Minor fix
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17111 72102866-910b-0410-8b05-ffd578937521
2003-07-04 17:34:48 +00:00
CaS
35c61adf2b
Documentation improvements.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17106 72102866-910b-0410-8b05-ffd578937521
2003-07-04 16:50:30 +00:00
CaS
8586061798
Temprary fix for older compilers ... avoid setting protocol for proxy
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17101 72102866-910b-0410-8b05-ffd578937521
2003-07-04 14:21:05 +00:00
CaS
a9a9958dfd
Add a couple of warning logs
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17097 72102866-910b-0410-8b05-ffd578937521
2003-07-04 10:52:56 +00:00
CaS
df90a32ded
Fix for fetching type information from remote system.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17095 72102866-910b-0410-8b05-ffd578937521
2003-07-04 09:33:53 +00:00
CaS
4f9f2c224e
Fix recursion problem
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17093 72102866-910b-0410-8b05-ffd578937521
2003-07-04 06:32:14 +00:00
ayers
00981688aa
* Source/GSFFCallInvocation.m
...
(gs_method_for_receiver_and_selector): Replace usage of
class_get_instance/class_method with GSGetInstance/ClassMethod and
Method_t with GSMethod.
(gs_find_by_receiver_best_typed_sel): Ditto.
(GSInvocationCallback): Ditto.
([GSFFCallInvocation -invokeWithTarget:]): Ditto.
* Source/GSFFIInvocation.m
(gs_method_for_receiver_and_selector): Ditto.
(gs_find_by_receiver_best_typed_sel): Ditto.
(GSFFIInvocationCallback): Ditto.
([GSFFIInvocation -invokeWithTarget:]): Ditto.
* Source/NSConnection.m
([NSConnection -_service_typeForSelector:]): Ditto.
* Source/NSInvocation.m
([NSInvocation -invokeWithTarget:]): Ditto.
* Source/NSObject.m
([NSObject +instanceMethodSignatureForSelector:]): Ditto.
([NDObject -methodSignatureForSelector:]): Ditto.
([NSObject +descriptionForInstanceMethod:]): Ditto.
([NSOnject -descriptionForMethod:]: Ditto.
* Source/NSProxy.m
([NSProxy +methodSignatureForSelector:]): Ditto.
([NSProxy -methodSignatureForSelector:]): Ditto.
* Source/NSDistantObject.m
([NSObject -selectorTypeForProxy:]): Ditto.
([NSDistantObject +respondsToSelector:]): Ditto. Corrected
implementation to check class methods instead of instance methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17016 72102866-910b-0410-8b05-ffd578937521
2003-06-25 10:26:29 +00:00