diff options
author | iains <iains@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-02 20:34:27 +0000 |
---|---|---|
committer | iains <iains@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-02 20:34:27 +0000 |
commit | 79b26c4ea533f0ac7f985ea921fc352a96931ca1 (patch) | |
tree | 9d894bbccfbc25bc511076abc98afbe44faa8adb /gcc/testsuite/objc-obj-c++-shared | |
parent | 6ac80fa2b1c32357664b0ece0231b0fb4239cc99 (diff) | |
download | gcc-79b26c4ea533f0ac7f985ea921fc352a96931ca1.tar.gz |
* objc-obj-c++-shared/Object1.h: Correct Line endings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161743 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/objc-obj-c++-shared')
-rw-r--r-- | gcc/testsuite/objc-obj-c++-shared/Object1.h | 151 |
1 files changed, 150 insertions, 1 deletions
diff --git a/gcc/testsuite/objc-obj-c++-shared/Object1.h b/gcc/testsuite/objc-obj-c++-shared/Object1.h index 3c7dd9aed72..324b6807cf3 100644 --- a/gcc/testsuite/objc-obj-c++-shared/Object1.h +++ b/gcc/testsuite/objc-obj-c++-shared/Object1.h @@ -1 +1,150 @@ -/* Object definition taken from <objc/Object.h>
*/
#ifndef _OBJC_OBJECT1_H_
#define _OBJC_OBJECT1_H_
#undef DO_NEXT_M64_OBJECT_IMPLEMENTATION
#ifndef __NEXT_RUNTIME__
# include <objc/Object.h>
#else
# include "next-abi.h"
# ifndef NEXT_OBJC_USE_NEW_INTERFACE
/* We are on a next system, or version, that is happy to compile V0 ABI */
# include <objc/Object.h>
# else
# if (NEXT_OBJC_ABI_VERSION==0)
/* We are on a system that has V0 ABI implementation in libobjc.dylib.
* However, we need to use the new accessors and pretend that the
* structures are opaque to avoid 'deprecated' warnings
*/
# include <objc/Object.h>
# else
/* We are on a system that includes a V2 ABI Object in libobjc.dylib.
*/
# ifdef __OBJC2__
/* ... and we have a V2 ABI compiler .. */
# include <objc/Object.h>
# else
/* We can't access the Object definition in libobjc.dylib because
* we can't yet generate OBJC2 code.
*
* So we'll roll our own Object - purely for the sake of compile
* checks - the code is unlikely to run...
*/
# ifndef _OBJC_OBJECT_H_
# define _OBJC_OBJECT_H_
#include <stdarg.h>
#import <objc/objc-runtime.h>
/* This is a cut-down Object with only the methods currently required
by the testsuite declared.
For those executables that require an implementation (to link) this
can be provided in a given test by placing:
#include "path/to/objc-c++shared/Object1-implementation.h"
at the end of the source for the test.
*/
@interface Object
{
Class isa; /* A pointer to the instance's class structure */
}
+ initialize;
- init;
+ new;
+ free;
- free;
+ alloc;
//- copy;
//+ allocFromZone:(void *)zone;
//- copyFromZone:(void *)zone;
//- (void *)zone;
+ class;
//+ superclass;
//+ (const char *) name;
- class;
- superclass;
- (const char *) name;
//- self;
//- (unsigned int) hash;
//-(BOOL) isEqual:anObject;
/* Testing inheritance relationships */
//- (BOOL) isKindOf: aClassObject;
//- (BOOL) isMemberOf: aClassObject;
//- (BOOL) isKindOfClassNamed: (const char *)aClassName;
//- (BOOL) isMemberOfClassNamed: (const char *)aClassName;
/* Testing class functionality */
//+ (BOOL) instancesRespondTo:(SEL)aSelector;
//- (BOOL) respondsTo:(SEL)aSelector;
/* Testing protocol conformance */
- (BOOL) conformsTo: (Protocol *)aProtocolObject;
//+ (BOOL) conformsTo: (Protocol *)aProtocolObject;
/* Obtaining method descriptors from protocols */
//- (struct objc_method_description *) descriptionForMethod:(SEL)aSel;
//+ (struct objc_method_description *) descriptionForInstanceMethod:(SEL)aSel;
/* Obtaining method handles */
//- (IMP) methodFor:(SEL)aSelector;
//+ (IMP) instanceMethodFor:(SEL)aSelector;
/* Sending messages determined at run time */
//- perform:(SEL)aSelector;
//- perform:(SEL)aSelector with:anObject;
//- perform:(SEL)aSelector with:object1 with:object2;
/* Posing */
//+ poseAs: aClassObject;
/* Enforcing intentions */
//- subclassResponsibility:(SEL)aSelector;
//- notImplemented:(SEL)aSelector;
/* Error handling */
//- doesNotRecognize:(SEL)aSelector;
//- error:(const char *)aString, ...;
/* Debugging */
//- (void) printForDebugger:(void *)stream;
/* Archiving */
//- awake;
//- write:(void *)stream;
//- read:(void *)stream;
//+ (int) version;
//+ setVersion: (int) aVersion;
/* Forwarding */
//- forward: (SEL)sel : (marg_list)args;
//- performv: (SEL)sel : (marg_list)args;
@end
#define DO_NEXT_M64_OBJECT_IMPLEMENTATION
# endif /* _OBJC_OBJECT_H_ */
# endif /* __OBJC2__ */
# endif /* ABI=0 */
# endif /* NEXT_OBJC_USE_NEW_INTERFACE */
# endif /* __NEXT_RUNTIME__ */
#endif /* _OBJC_OBJECT1_H_ */
\ No newline at end of file +/* Object definition taken from <objc/Object.h> + */ +#ifndef _OBJC_OBJECT1_H_ +#define _OBJC_OBJECT1_H_ + +#undef DO_NEXT_M64_OBJECT_IMPLEMENTATION + +#ifndef __NEXT_RUNTIME__ +# include <objc/Object.h> +#else +# include "next-abi.h" +# ifndef NEXT_OBJC_USE_NEW_INTERFACE +/* We are on a next system, or version, that is happy to compile V0 ABI */ +# include <objc/Object.h> +# else +# if (NEXT_OBJC_ABI_VERSION==0) +/* We are on a system that has V0 ABI implementation in libobjc.dylib. + * However, we need to use the new accessors and pretend that the + * structures are opaque to avoid 'deprecated' warnings + */ +# include <objc/Object.h> +# else +/* We are on a system that includes a V2 ABI Object in libobjc.dylib. +*/ +# ifdef __OBJC2__ +/* ... and we have a V2 ABI compiler .. */ +# include <objc/Object.h> +# else +/* We can't access the Object definition in libobjc.dylib because + * we can't yet generate OBJC2 code. + * + * So we'll roll our own Object - purely for the sake of compile + * checks - the code is unlikely to run... +*/ +# ifndef _OBJC_OBJECT_H_ +# define _OBJC_OBJECT_H_ + +#include <stdarg.h> +#import <objc/objc-runtime.h> + +/* This is a cut-down Object with only the methods currently required + by the testsuite declared. + + For those executables that require an implementation (to link) this + can be provided in a given test by placing: + #include "path/to/objc-c++shared/Object1-implementation.h" + at the end of the source for the test. +*/ + +@interface Object +{ + Class isa; /* A pointer to the instance's class structure */ +} ++ initialize; +- init; + ++ new; ++ free; +- free; ++ alloc; +//- copy; +//+ allocFromZone:(void *)zone; +//- copyFromZone:(void *)zone; +//- (void *)zone; + ++ class; +//+ superclass; +//+ (const char *) name; +- class; +- superclass; +- (const char *) name; + +//- self; +//- (unsigned int) hash; +//-(BOOL) isEqual:anObject; + +/* Testing inheritance relationships */ + +//- (BOOL) isKindOf: aClassObject; +//- (BOOL) isMemberOf: aClassObject; +//- (BOOL) isKindOfClassNamed: (const char *)aClassName; +//- (BOOL) isMemberOfClassNamed: (const char *)aClassName; + +/* Testing class functionality */ + +//+ (BOOL) instancesRespondTo:(SEL)aSelector; +//- (BOOL) respondsTo:(SEL)aSelector; + +/* Testing protocol conformance */ + +- (BOOL) conformsTo: (Protocol *)aProtocolObject; +//+ (BOOL) conformsTo: (Protocol *)aProtocolObject; + +/* Obtaining method descriptors from protocols */ + +//- (struct objc_method_description *) descriptionForMethod:(SEL)aSel; +//+ (struct objc_method_description *) descriptionForInstanceMethod:(SEL)aSel; + +/* Obtaining method handles */ + +//- (IMP) methodFor:(SEL)aSelector; +//+ (IMP) instanceMethodFor:(SEL)aSelector; + +/* Sending messages determined at run time */ + +//- perform:(SEL)aSelector; +//- perform:(SEL)aSelector with:anObject; +//- perform:(SEL)aSelector with:object1 with:object2; + +/* Posing */ + +//+ poseAs: aClassObject; + +/* Enforcing intentions */ + +//- subclassResponsibility:(SEL)aSelector; +//- notImplemented:(SEL)aSelector; + +/* Error handling */ + +//- doesNotRecognize:(SEL)aSelector; +//- error:(const char *)aString, ...; + +/* Debugging */ + +//- (void) printForDebugger:(void *)stream; + +/* Archiving */ + +//- awake; +//- write:(void *)stream; +//- read:(void *)stream; +//+ (int) version; +//+ setVersion: (int) aVersion; + +/* Forwarding */ + +//- forward: (SEL)sel : (marg_list)args; +//- performv: (SEL)sel : (marg_list)args; + +@end + +#define DO_NEXT_M64_OBJECT_IMPLEMENTATION + +# endif /* _OBJC_OBJECT_H_ */ +# endif /* __OBJC2__ */ +# endif /* ABI=0 */ +# endif /* NEXT_OBJC_USE_NEW_INTERFACE */ +# endif /* __NEXT_RUNTIME__ */ +#endif /* _OBJC_OBJECT1_H_ */ |