diff options
-rw-r--r-- | test/FrontendObjC/2007-10-17-SJLJExceptions.m | 33 |
1 files changed, 19 insertions, 14 deletions
diff --git a/test/FrontendObjC/2007-10-17-SJLJExceptions.m b/test/FrontendObjC/2007-10-17-SJLJExceptions.m index 48b8e8e95c..a30a95fa35 100644 --- a/test/FrontendObjC/2007-10-17-SJLJExceptions.m +++ b/test/FrontendObjC/2007-10-17-SJLJExceptions.m @@ -1,18 +1,23 @@ -// RUN: %llvmgcc -x objective-c %s -arch i386 -pipe -std=gnu99 -O2 -fexceptions -S -o - | not grep Unwind_Resume +#import <stdio.h> -#import <Foundation/Foundation.h> - -static NSMutableArray *anArray = nil; +@interface Foo { + char c; + short s; + int i; + long l; + float f; + double d; +} +-(Foo*)retain; +@end -CFArrayRef bork(void) { - CFArrayRef result = NULL; - NSAutoreleasePool *pool = [NSAutoreleasePool new]; - @try { - result = CFRetain(anArray); - } @catch(id any) { - NSLog(@"Swallowed exception %@", any); - } +struct Foo *bork(Foo *FooArray) { + struct Foo *result = 0; + @try { + result = [FooArray retain]; + } @catch(id any) { + printf("hello world\n"); + } - [pool release]; - return result; + return result; } |