1*67e74705SXin Li// RUN: %clang_cc1 -triple x86_64-apple-macosx -emit-llvm -debug-info-kind=limited -stdlib=libc++ -fblocks -fexceptions -x objective-c++ -o - %s | FileCheck %s 2*67e74705SXin Li 3*67e74705SXin Li// Verify that all invoke instructions have a debug location. 4*67e74705SXin Li// Literally: There are no unwind lines that don't end with ", (!dbg 123)". 5*67e74705SXin Li// CHECK-NOT: {{to label %.* unwind label [^,]+$}} 6*67e74705SXin Li 7*67e74705SXin Livoid block(void (^)(void)); 8*67e74705SXin Liextern void foo(); 9*67e74705SXin Listruct A { 10*67e74705SXin Li ~A(void) { foo(); } 11*67e74705SXin Li void bar() const {} 12*67e74705SXin Li}; 13*67e74705SXin Livoid baz(void const *const) {} 14*67e74705SXin Listruct B : A {}; 15*67e74705SXin Livoid test() { 16*67e74705SXin Li A a; 17*67e74705SXin Li B b; 18*67e74705SXin Li block(^(void) { 19*67e74705SXin Li baz(&b); 20*67e74705SXin Li block(^() { 21*67e74705SXin Li a.bar(); 22*67e74705SXin Li }); 23*67e74705SXin Li }); 24*67e74705SXin Li} 25