#import #include #if TARGET_OS_IPHONE @import CoreGraphics; typedef CGRect NSRect; #endif struct things_to_sum { int a; int b; int c; }; @interface ThingSummer : NSObject { }; -(int)sumThings:(struct things_to_sum)tts; @end @implementation ThingSummer -(int)sumThings:(struct things_to_sum)tts { return tts.a + tts.b + tts.c; } @end int main() { @autoreleasepool { ThingSummer *summer = [ThingSummer alloc]; struct things_to_sum tts = { 2, 3, 4 }; int ret = [summer sumThings:tts]; NSRect rect = {{0, 0}, {10, 20}}; // The Objective-C V1 runtime won't read types from metadata so we need // NSValue in our debug info to use it in our test. NSValue *v = [NSValue valueWithRect:rect]; return rect.origin.x; // Set breakpoint here. } }