Skip to content

Instantly share code, notes, and snippets.

Created Aug 28, 2009
What would you like to do?
#import <Foundation/Foundation.h>
#import <objc/runtime.h>
@interface ExtraData : NSObject
@implementation ExtraData
- (void)dealloc;
fprintf(stderr, "ExtraData %p deallocated\n", self);
[super dealloc];
int main(int argc, char *argv[])
NSObject *owner = [[NSObject alloc] init];
ExtraData *data = [[ExtraData alloc] init];
static void *ExtraDataKey;
objc_setAssociatedObject(owner, &ExtraDataKey, data, OBJC_ASSOCIATION_RETAIN);
[data release];
fprintf(stderr, "Releasing owner...\n");
[owner release];
return 0;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment