1 // RUN: %clang_cc1 %s -triple x86_64-none-linux-gnu -emit-llvm -fcxx-exceptions -fexceptions -std=c++11 -o - | FileCheck %s 2 // PR13359 3 4 struct X { 5 ~X(); 6 }; 7 struct Error { 8 Error(const X&) noexcept; 9 }; 10 11 void f() { 12 try { 13 throw Error(X()); 14 } catch (...) { } 15 } 16 17 // CHECK-LABEL: define void @_Z1fv 18 // CHECK: call void @_ZN5ErrorC1ERK1X 19 // CHECK: invoke void @__cxa_throw 20 // CHECK: landingpad 21 // CHECK: call void @_ZN1XD1Ev 22 // CHECK-NOT: __cxa_free_exception 23