Commit graph

72 commits

Author SHA1 Message Date
rfm
1c8f36b122 Use GSSelectorTypesMatch() for types comparison where we are interested in types
but not qualifiers and stack layout information.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35304 72102866-910b-0410-8b05-ffd578937521
2012-07-20 04:43:58 +00:00
rfm
da19c7df2e trivial formating tweaks ... add missing white space
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34374 72102866-910b-0410-8b05-ffd578937521
2012-01-01 07:38:53 +00:00
rfm
79383c613d 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
rfm
5b47a4bd32 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
rfm
0ae9a6c552 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
rfm
08440691cb simplify typed selector usage.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32396 72102866-910b-0410-8b05-ffd578937521
2011-02-27 23:29:25 +00:00
rfm
050f3f7190 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
rfm
ca854a4b3c minor cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32234 72102866-910b-0410-8b05-ffd578937521
2011-02-19 19:42:42 +00:00
rfm
b1eb86d5b4 simplify a little
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32229 72102866-910b-0410-8b05-ffd578937521
2011-02-19 17:46:45 +00:00
rfm
63374c948b zero self after dealloc if we are going to call another method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29837 72102866-910b-0410-8b05-ffd578937521
2010-03-04 12:24:43 +00:00
rfm
df6384cc18 avoid objc_skip_offset()
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29814 72102866-910b-0410-8b05-ffd578937521
2010-03-01 10:34:35 +00:00
rfm
7ff4d4c9c7 fixups for libobjc2
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29753 72102866-910b-0410-8b05-ffd578937521
2010-02-25 18:49:31 +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
3ae126279b Apply patch to switch completely to using pthreads
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29367 72102866-910b-0410-8b05-ffd578937521
2010-01-23 17:00:13 +00:00
rfm
6bf3a906e9 cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28787 72102866-910b-0410-8b05-ffd578937521
2009-10-10 08:16:17 +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
2fc494c446 a bit step towards removing obsolete mframe code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28774 72102866-910b-0410-8b05-ffd578937521
2009-10-04 15:26:07 +00:00
rfm
8658db87db 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
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
3aa7189ddb Improve MacOS-X compatibility of headers.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25638 72102866-910b-0410-8b05-ffd578937521
2007-11-29 20:53:26 +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
3d3b1e37fc Fix logging level for when unable to open file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25204 72102866-910b-0410-8b05-ffd578937521
2007-05-29 09:07:47 +00:00
rfm
ded19f3ec1 more work on hding external symbols and simplifying.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23890 72102866-910b-0410-8b05-ffd578937521
2006-10-16 09:30:18 +00:00
rfm
31342aef09 Updates to reduce global namespace pollution. Plenty more remaining.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23795 72102866-910b-0410-8b05-ffd578937521
2006-10-09 14:00:01 +00:00
rfm
85b1050160 Avoid some gcc-4.1 compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22932 72102866-910b-0410-8b05-ffd578937521
2006-05-15 12:07:35 +00:00
jbettis
2ee54ee5a6 GSFFCallInvocation.m: If the returning context is expecting a void* but we have a different return type just cast it. This normally is because the method was not declared and has defaulted to returning id.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22781 72102866-910b-0410-8b05-ffd578937521
2006-04-12 19:43:49 +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
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
ayers
3a3f23c0e7 * Source/GSFFCallInvocation.m
* Source/GSFFIInvocation.m (gs_protocol_selector): Skip '-'
        for negative offsets to avoid issues with pre gcc 3.4 generated
        signatures.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19975 72102866-910b-0410-8b05-ffd578937521
2004-09-02 16:35:44 +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
ayers
eb84dff7b8 * Headers/Additions/GNUstepBase/GSObjCRuntime.h
* Source/Additions/GSObjCRuntime.m (GSSelectorTypesMatch):
        New Function.
        (gs_skip_type_qualifier_and_layout_info): Ditto.

        * Source/callframe.m (callframe_do_call): Use
	GSSelectorTypesMatch instead of sel_types_match.
        * Source/cifframe.m (cifframe_do_call): Ditto.
        * Source/mframe.m (mframe_do_call): Ditto.

        * Source/GSFFCallInvocation.m (GSInvocationCallback): Use
        NSDebugFLog to NSWarnFLog.
        * Source/GSFFIInvocation.m (GSFFIInvocationCallback): Ditto.

        * Testing/nsmethodsignature.m: Use GSSelectorTypesMatch
	instead of sel_types_match.  Test it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19886 72102866-910b-0410-8b05-ffd578937521
2004-08-19 16:19:48 +00:00
ayers
0fe2082695 * Headers/Foundation/NSMethodSignature.h
* Source/NSMethodSignature.m
        * Source/GSFFCallInvocation.m
        * Source/GSFFIInvocation.m: Revert last mframe patch.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19667 72102866-910b-0410-8b05-ffd578937521
2004-07-02 08:04:54 +00:00
ayers
dbe1800bbd * Headers/Foundation/NSMethodSignature.h
(_internalMethodTypes): New instance variable.
        * Source/NSMethodSignature.m: ([+signatureWithObjCTypes]): Store
        the runtime signature separately from the mframe signature.
        Document.
        ([-dealloc]): Free new instance variable.
        ([-methodInfo]): Use _internalMethodTypes to build argument
        information.

        * Source/GSFFCallInvocation.m (GSInvocationCallback)
        * Source/GSFFIInvocation.m (GSInvocationCallback): Use the
        selector registered in the runtime for the receiver instead of
        the constructed selector from the stack to avoid mismatches in the
        runtime.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19662 72102866-910b-0410-8b05-ffd578937521
2004-07-01 11:38:19 +00:00
wim
b08f66b87a (GSInvocationCallback): Try to find type information
if not available, also changes wording of exception when no type information is found.
(Fixes #8654)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@19190 72102866-910b-0410-8b05-ffd578937521
2004-04-26 07:51:35 +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
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
02aace51b0 Tidyups etc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17380 72102866-910b-0410-8b05-ffd578937521
2003-07-28 10:53:18 +00:00
CaS
2330b448e0 Minor fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17347 72102866-910b-0410-8b05-ffd578937521
2003-07-26 06:48:44 +00:00
CaS
db0baccb2e Tidyups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17163 72102866-910b-0410-8b05-ffd578937521
2003-07-07 05:11:16 +00:00
CaS
383e71072f DO type info fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@17102 72102866-910b-0410-8b05-ffd578937521
2003-07-04 15:11:15 +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
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
fedor
0e59d4552d 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
CaS
794ed2711b Encoding/decoding fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@16417 72102866-910b-0410-8b05-ffd578937521
2003-04-10 16:26:09 +00:00
CaS
b30484a6c0 Invocation fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@15873 72102866-910b-0410-8b05-ffd578937521
2003-02-04 18:18:47 +00:00
CaS
d64578fc3e Tidied for gcc-3.4
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@15476 72102866-910b-0410-8b05-ffd578937521
2003-01-03 20:14:47 +00:00
fedor
b8e7170255 Merge from 1.4.0
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@14208 72102866-910b-0410-8b05-ffd578937521
2002-07-29 19:37:40 +00:00
fedor
d88dda825c Libffi support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@13506 72102866-910b-0410-8b05-ffd578937521
2002-04-18 16:02:12 +00:00