taggedPointersDisabled.m [plain text]
// TEST_ENV OBJC_DISABLE_TAGGED_POINTERS=YES
// TEST_CRASHES
/*
TEST_RUN_OUTPUT
objc\[\d+\]: tagged pointers are disabled
CRASHED: SIG(ILL|TRAP)
OR
OK: taggedPointersDisabled.m
END
*/
#include "test.h"
#include <objc/objc-internal.h>
#if !OBJC_HAVE_TAGGED_POINTERS
int main()
{
succeed(__FILE__);
}
#else
int main()
{
testassert(!_objc_taggedPointersEnabled());
_objc_registerTaggedPointerClass((objc_tag_index_t)0, nil);
fail("should have crashed in _objc_registerTaggedPointerClass()");
}
#endif