Updated code to compile with GCC 4.6 and the new GNU Objective-C runtime

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31765 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2010-12-23 02:23:05 +00:00
parent 49e56309be
commit 30f098f9f8
19 changed files with 227 additions and 78 deletions

View file

@ -22,23 +22,15 @@
Boston, MA 02111 USA.
*/
/*
CAVEATS:
- unloading modules not implemented
- would like to raise exceptions without having to turn this into
a .m file (right now NSBundle does this for us, ok?)
*/
/* PS: Unloading modules is not implemented. */
#import "common.h"
#include <stdio.h>
#include <objc/objc-api.h>
#if !defined(NeXT_RUNTIME) && !defined(__GNUSTEP_RUNTIME__)
# include <objc/objc-list.h>
#elif defined(NeXT_RUNTIME)
#if defined(NeXT_RUNTIME)
# include <objc/objc-load.h>
#endif
#ifdef __GNUSTEP_RUNTIME__
# include <objc/hooks.h>
#endif
@ -57,11 +49,6 @@ static BOOL dynamic_loaded;
/* Our current callback function */
static void (*_objc_load_load_callback)(Class, struct objc_category *) = 0;
/* List of modules we have loaded (by handle) */
#if !defined(NeXT_RUNTIME) && !defined(__GNUSTEP_RUNTIME__)
static struct objc_list *dynamic_handles = NULL;
#endif
/* Check to see if there are any undefined symbols. Print them out.
*/
static int
@ -190,10 +177,6 @@ GSPrivateLoadModule(NSString *filename, FILE *errorStream,
return 1;
}
#if !defined(NeXT_RUNTIME) && !defined(__GNUSTEP_RUNTIME__)
dynamic_handles = list_cons(handle, dynamic_handles);
#endif
/* If there are any undefined symbols, we can't load the bundle */
if (objc_check_undefineds(errorStream))
{
@ -228,7 +211,7 @@ GSPrivateLoadModule(NSString *filename, FILE *errorStream,
}
#endif /* not __ELF__ */
#ifndef __GNUSTEP_RUNTIME__
#if !defined(__GNUSTEP_RUNTIME__) && !defined(__GNU_LIBOBJC__)
__objc_resolve_class_links(); /* fill in subclass_list and sibling_class */
#endif
_objc_load_callback = 0;