|
|
|
|
@ -3,9 +3,10 @@
|
|
|
|
|
|
|
|
|
|
// If __LEGACY_GNU_MODE__ is defined then we include the old GNU runtime header
|
|
|
|
|
// instead of this one
|
|
|
|
|
#ifndef __OBJC_LEGACY_GNU_MODE__
|
|
|
|
|
#define __GNUSTEP_RUNTIME__
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
#include <stddef.h>
|
|
|
|
|
#include <sys/types.h>
|
|
|
|
|
@ -36,6 +37,10 @@ typedef struct objc_ivar* Ivar;
|
|
|
|
|
|
|
|
|
|
// Don't redefine these types if the old GNU header was included first.
|
|
|
|
|
#ifndef __objc_INCLUDE_GNU
|
|
|
|
|
// Define the macro so that including the old GNU header does nothing.
|
|
|
|
|
# define __objc_INCLUDE_GNU
|
|
|
|
|
# define __objc_api_INCLUDE_GNU
|
|
|
|
|
|
|
|
|
|
typedef struct objc_selector *SEL;
|
|
|
|
|
|
|
|
|
|
typedef struct objc_class *Class;
|
|
|
|
|
@ -45,7 +50,8 @@ typedef struct objc_object
|
|
|
|
|
Class isa;
|
|
|
|
|
} *id;
|
|
|
|
|
|
|
|
|
|
struct objc_super {
|
|
|
|
|
struct objc_super
|
|
|
|
|
{
|
|
|
|
|
id receiver;
|
|
|
|
|
# if !defined(__cplusplus) && !__OBJC2__
|
|
|
|
|
Class class;
|
|
|
|
|
@ -117,6 +123,8 @@ struct objc_method_description
|
|
|
|
|
# define Nil ((Class)_OBJC_NULL_PTR)
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#include "slot.h"
|
|
|
|
|
|
|
|
|
|
BOOL class_addIvar(Class cls,
|
|
|
|
|
const char *name,
|
|
|
|
|
size_t size,
|
|
|
|
|
@ -302,11 +310,6 @@ const char *sel_getType_np(SEL aSel);
|
|
|
|
|
*/
|
|
|
|
|
unsigned sel_copyTypes(const char *selName, const char **types, unsigned count);
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
#include "runtime-legacy.h"
|
|
|
|
|
#endif // __LEGACY_GNU_MODE__
|
|
|
|
|
#include "slot.h"
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* New ABI lookup function. Receiver may be modified during lookup or proxy
|
|
|
|
|
* forwarding and the sender may affect how lookup occurs.
|
|
|
|
|
|