1// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -fexceptions -fobjc-exceptions -o - %s | FileCheck %s 2 3// rdar://problem/8535238 4// CHECK: declare void @objc_exception_rethrow() 5 6void protos() { 7 extern void foo(); 8 @try { 9 foo(); 10 } @catch (id e) { 11 @throw; 12 } 13} 14 15void throwing() { 16 @throw(@"error!"); 17} 18 19// rdar://problem/9431547 20void die(void) __attribute__((nothrow, noreturn)); 21void test2(void) { 22 @try { 23 die(); 24 } @finally { 25 extern void test2_helper(void); 26 test2_helper(); 27 } 28 29 // CHECK-LABEL: define void @test2() 30 // CHECK-NOT: call void @test2_helper() 31} 32