mirror of
https://github.com/darlinghq/darling-objc4.git
synced 2024-11-26 21:50:26 +00:00
41 lines
817 B
Objective-C
41 lines
817 B
Objective-C
// TEST_CFLAGS -framework CoreFoundation
|
|
// TEST_CONFIG MEM=mrc
|
|
// not for ARC because ARC memory management doesn't
|
|
// work on CF types whose ObjC side is not yet loaded
|
|
|
|
#include <CoreFoundation/CoreFoundation.h>
|
|
#include <objc/runtime.h>
|
|
|
|
#include "test.h"
|
|
|
|
#if __has_feature(objc_arc)
|
|
|
|
int main()
|
|
{
|
|
testwarn("rdar://11368528 confused by Foundation");
|
|
succeed(__FILE__);
|
|
}
|
|
|
|
#else
|
|
|
|
int main()
|
|
{
|
|
// rdar://6164781 setAssociatedObject on unresolved future class crashes
|
|
|
|
id mp = (id)CFMachPortCreate(0, 0, 0, 0);
|
|
testassert(mp);
|
|
|
|
testassert(! objc_getClass("NSMachPort"));
|
|
|
|
objc_setAssociatedObject(mp, (void*)1, mp, OBJC_ASSOCIATION_ASSIGN);
|
|
|
|
id obj = objc_getAssociatedObject(mp, (void*)1);
|
|
testassert(obj == mp);
|
|
|
|
CFRelease((CFTypeRef)mp);
|
|
|
|
succeed(__FILE__);
|
|
}
|
|
|
|
#endif
|