1// RUN: %clang_cc1 -fcxx-exceptions -fexceptions %s -triple=i686-unknown-linux -emit-llvm -o - | FileCheck %s 2typedef int Array[10]; 3 4void foo() throw (Array) { 5 throw 0; 6 // CHECK: landingpad 7 // CHECK-NEXT: filter {{.*}} @_ZTIPi 8} 9 10struct S { 11 void foo() throw (S[10]) { 12 throw 0; 13 } 14}; 15 16template <typename T> 17struct S2 { 18 void foo() throw (T) { 19 throw 0; 20 } 21}; 22 23int main() { 24 S s; 25 s.foo(); 26 // CHECK: landingpad 27 // CHECK-NEXT: filter {{.*}} @_ZTIP1S 28 29 S2 <int[10]> s2; 30 s2.foo(); 31 // CHECK: landingpad 32 // CHECK-NEXT: filter {{.*}} @_ZTIPi 33} 34