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
5fac2e2ca2
tidyups
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36517 72102866-910b-0410-8b05-ffd578937521
2013-04-13 10:40:15 +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
David Chisnall
56a002dae7
Rewrote NSProxy's -retain / -release to be the same as NSObject, not its own ad-hoc thing.
...
Added declaration of __bridge for use in non-ARC mode.
Tweaked arrayWithObjects:count: to take a const id* parameter, to avoid ARC
treating it as a write-back parameter.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33425 72102866-910b-0410-8b05-ffd578937521
2011-06-30 14:44:58 +00:00
David Chisnall
7c427b04d6
__objc_responds_to() -> class_respondsToSelector().
...
No functionality change, just a switch to using the portable public functions.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32863 72102866-910b-0410-8b05-ffd578937521
2011-04-14 18:04:50 +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
0cb48d516b
Update for new runtime api
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32241 72102866-910b-0410-8b05-ffd578937521
2011-02-20 08:32:54 +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
821a21b54d
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
Richard Frith-MacDonald
c07dc48eb3
more header reorganisation
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29731 72102866-910b-0410-8b05-ffd578937521
2010-02-25 08:36:34 +00:00
Richard Frith-MacDonald
8769dd8b6f
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
Richard Frith-MacDonald
7cc69dfaae
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
Richard Frith-MacDonald
c8a6832349
cosmetic tweaks
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29657 72102866-910b-0410-8b05-ffd578937521
2010-02-17 11:47:06 +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
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
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
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
06981169ed
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
Richard Frith-Macdonald
c9c6734169
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
Adam Fedor
fcc13ccd0f
* 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
Richard Frith-Macdonald
d9eff62ccf
Fix fosdem changes and a few bugs exposed by them.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20811 72102866-910b-0410-8b05-ffd578937521
2005-02-28 17:18:54 +00:00
Richard Frith-Macdonald
7de873c1d6
minor optimisation
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@20097 72102866-910b-0410-8b05-ffd578937521
2004-09-20 10:10:10 +00:00
David Ayers
8cd30609bf
* 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
Adrian Robert
bda35fceb3
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
Richard Frith-Macdonald
488e376948
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
David Ayers
fda10c748a
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
Adam Fedor
917cb25b7d
Fix include
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17421 72102866-910b-0410-8b05-ffd578937521
2003-08-03 03:57:53 +00:00
Richard Frith-Macdonald
7c391eb265
Fix a few oddities
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17411 72102866-910b-0410-8b05-ffd578937521
2003-08-01 10:15:11 +00:00
David Ayers
ac30183cd6
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
Richard Frith-Macdonald
29981f9f04
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
David Ayers
f6c50c154d
* 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
Adam Fedor
d228cba99b
Change syntax of includes
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@16874 72102866-910b-0410-8b05-ffd578937521
2003-06-07 01:24:41 +00:00
Richard Frith-Macdonald
7d48eb4ea6
Some NSProxy fixes.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@14295 72102866-910b-0410-8b05-ffd578937521
2002-08-19 10:26:07 +00:00
Richard Frith-Macdonald
a0a6f5f346
Added date version and title
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@11814 72102866-910b-0410-8b05-ffd578937521
2001-12-18 16:54:15 +00:00
Richard Frith-Macdonald
5be36e089c
Many minor fixes for autogsdoc.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@11787 72102866-910b-0410-8b05-ffd578937521
2001-12-17 14:31:42 +00:00
Adam Fedor
aae35415bc
Comment out decl on Darwin
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@10649 72102866-910b-0410-8b05-ffd578937521
2001-08-03 20:43:40 +00:00
Adam Fedor
b45f9f3970
New strerror-like function
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@10043 72102866-910b-0410-8b05-ffd578937521
2001-05-31 22:39:16 +00:00
Richard Frith-Macdonald
93117bdbbd
General improvements in responsetoSelector and methodSig code
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@9923 72102866-910b-0410-8b05-ffd578937521
2001-05-12 06:25:46 +00:00
Richard Frith-MacDonald
42011ceae4
Basic tidyup for start of support for apple runtime
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@7949 72102866-910b-0410-8b05-ffd578937521
2000-10-31 16:17:33 +00:00
Richard Frith-MacDonald
dec9cb1e22
Various tidups.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@7902 72102866-910b-0410-8b05-ffd578937521
2000-10-24 11:58:25 +00:00
Adam Fedor
078e46d305
Merge from dawn
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@4853 72102866-910b-0410-8b05-ffd578937521
1999-09-09 02:56:20 +00:00
Richard Frith-MacDonald
8278b1de7c
Tidy isKindOfClass
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@4669 72102866-910b-0410-8b05-ffd578937521
1999-07-28 15:04:40 +00:00
Richard Frith-MacDonald
27ec3838e8
Proprtylist extensions and coding for DO improvements plus a couple of
...
bugfixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@3492 72102866-910b-0410-8b05-ffd578937521
1998-12-18 17:05:44 +00:00
Adam Fedor
5380811bdc
Make NSObject conform to specs
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2987 72102866-910b-0410-8b05-ffd578937521
1998-09-28 20:38:02 +00:00
Richard Frith-MacDonald
e2a88e91e3
Tidied method signature stuff
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2984 72102866-910b-0410-8b05-ffd578937521
1998-09-26 05:07:02 +00:00
Richard Frith-MacDonald
c6fdd98296
Oops - comment out two methods that we can't have until we get forwardInvocation
...
workign properly.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2906 72102866-910b-0410-8b05-ffd578937521
1998-08-04 15:41:31 +00:00
Richard Frith-MacDonald
efa7d1d434
Reinstated -respondsToSelector: and -conformsToProtocol:
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2876 72102866-910b-0410-8b05-ffd578937521
1998-07-29 09:47:26 +00:00
Scott Christley
369c38280a
Remove dependency upon config.h by headers files and include
...
directly in source files because the config.h file is system
dependent, used just for compiling the source, and should
not be installed.
Some minor bug fixes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2619 72102866-910b-0410-8b05-ffd578937521
1997-11-06 00:51:23 +00:00
Adam Fedor
3324d6f0d4
Conform to new makefile package changes.
...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2590 72102866-910b-0410-8b05-ffd578937521
1997-10-30 19:37:24 +00:00