// RUN: %clang_cc1 -std=c++11 -triple i386-unknown-unknown -fexceptions -fcxx-exceptions %s -emit-llvm -o - | FileCheck %s
// REQUIRES: asserts

struct Throws {
  Throws(int);
  Throws();
  ~Throws();
};

// CHECK-LABEL: define void @_Z7cleanupi
void cleanup(int n) {
  // CHECK: invoke void @_ZN6ThrowsC1Ei
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD:[^ ]+]]
  // CHECK: invoke void @_ZN6ThrowsC1Ei
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD]]
  // CHECK: invoke void @_ZN6ThrowsC1Ei
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD]]
  // CHECK: invoke void @_ZN6ThrowsC1Ev
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD]]
  new Throws[n] { 1, 2, 3 };
  // CHECK: [[LPAD]]:
  // CHECK-NEXT: landingpad
  // CHECK: call void @_ZN6ThrowsD1Ev
  // CHECK: call void @_ZdaPv
}


// CHECK-LABEL: define void @_Z7cleanupv
void cleanup() {
  // CHECK: invoke void @_ZN6ThrowsC1Ei
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD2:[^ ]+]]
  // CHECK: invoke void @_ZN6ThrowsC1Ei
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD2]]
  // CHECK: invoke void @_ZN6ThrowsC1Ei
  // CHECK-NEXT: to label %{{[^ ]+}} unwind label %[[LPAD2]]
  new Throws[3] { 1, 2, 3 };
  // CHECK: [[LPAD2]]:
  // CHECK-NEXT: landingpad
  // CHECK: call void @_ZN6ThrowsD1Ev
  // CHECK: call void @_ZdaPv
}
