Removed all uses of @defs() from -gui, so it now compiles cleanly with the non-fragile ABI. All ivars that must be accessed from other classes are now wrapped in PACKAGE_SCOPE. With clang, this expands to @package, with GCC it expands to @public.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30045 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
David Chisnall 2010-03-27 00:01:03 +00:00
parent 1f6a5b28c2
commit a9ba2e5e77
12 changed files with 61 additions and 51 deletions

View file

@ -28,6 +28,8 @@
Boston, MA 02110-1301, USA.
*/
#define EXPOSE_NSThread_IVARS
#import <Foundation/NSGeometry.h>
#import <Foundation/NSString.h>
#import <Foundation/NSArray.h>
@ -53,8 +55,6 @@
#import "GNUstepGUI/GSVersion.h"
#import "GNUstepGUI/GSDisplayServer.h"
typedef struct { @defs(NSThread) } *TInfo;
/* The memory zone where all global objects are allocated from (Contexts
are also allocated from this zone) */
static NSZone *_globalGSZone = NULL;
@ -97,7 +97,7 @@ NSGraphicsContext *GSCurrentContext(void)
*/
NSThread *th = GSCurrentThread();
return (NSGraphicsContext*) ((TInfo)th)->_gcontext;
return (NSGraphicsContext*) th->_gcontext;
#else
NSMutableDictionary *dict = [[NSThread currentThread] threadDictionary];
@ -166,7 +166,7 @@ NSGraphicsContext *GSCurrentContext(void)
*/
NSThread *th = GSCurrentThread();
ASSIGN(((TInfo)th)->_gcontext, context);
ASSIGN(th->_gcontext, context);
#else
NSMutableDictionary *dict = [[NSThread currentThread] threadDictionary];