// RUN: %clang_cc1 -fcxx-exceptions -fexceptions %s -triple=i686-unknown-linux -emit-llvm -o - | FileCheck %s typedef int Array[10]; void foo() throw (Array) { throw 0; // CHECK: landingpad // CHECK-NEXT: filter {{.*}} @_ZTIPi } struct S { void foo() throw (S[10]) { throw 0; } }; template <typename T> struct S2 { void foo() throw (T) { throw 0; } }; int main() { S s; s.foo(); // CHECK: landingpad // CHECK-NEXT: filter {{.*}} @_ZTIP1S S2 <int[10]> s2; s2.foo(); // CHECK: landingpad // CHECK-NEXT: filter {{.*}} @_ZTIPi }